0
電子メールを送信するための統合テストを書いてください。インラインで電子メールが送信されます。ここEmail送信インテグレーションテスト
public interface MailSenderService {
void sendEmail(String to, String from, String subject, String body); }
メール送信者クラス
@Service
public class MailSenderServiceImpl implements MailSenderService {
private static final Logger logger = LoggerFactory.getLogger(MailSenderServiceImpl.class);
@Autowired
private JavaMailSender javaMailSender;
@Autowired
Configuration freemarkerConfiguration;
private SimpleMailMessage composeMail(String to, String from, String subject, String body) {
SimpleMailMessage message = new SimpleMailMessage();
message.setFrom(from);
message.setTo(to);
message.setSubject(subject);
message.setText(body);
return message;
}
@Override
public void sendEmail(String to, String from, String subject, String body) {
sendMessage(composeMail(to, from, subject, body));
}
@Async
private void sendMessage(SimpleMailMessage message) {
Assert.notNull(javaMailSender, "Email Sender must not be null");
javaMailSender.send(message);
}}
そして最後に合格しない統合テスト、次のとおりです。
public class MailSenderServiceIT extends BaseServiceIntegrationTest {
@Autowired
private MailSenderService mailSenderService;
@Test
public void sendEmail() {
mailSenderService.sendEmail("[email protected]", "[email protected]", "Test Subject",
"Test Body");
flushAndClear();
}
は私がメール送信のためにこれらのプロパティを使用しますので、
は、あなたがあなたの統合テストではそのような何かを行うことができます:私はpersonnalyことを行うにはJUnitのルールを作成します.gmail.com smtp.port = 587 [email protected] smtp.password = aaa12345678 $ – Mary
テストの実行MailAuthenticationException – Mary