【发布时间】:2016-06-29 22:15:34
【问题描述】:
请帮我写一个用于发送电子邮件的集成测试,即 inreal 发送电子邮件。
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("test1@gmail.com", "test2@gmail.com", "Test Subject",
"Test Body");
flushAndClear();
}
【问题讨论】:
标签: java spring email integration-testing