也许我没有使用正确的搜索关键字,但我在集成测试中找不到任何关于电子邮件主题的内容。“邮件”这个词甚至没有出现在测试文档中。
我想知道是否甚至可以检查 Spring 应用程序是否正在尝试发送电子邮件,更重要的是,我如何模拟它或阻止它在每次运行集成测试时实际尝试联系 SMTP 服务器?
如果没有任何代码,这不会是一个很大的问题,所以这就是我所拥有的:
@Test
public void testResendConfirmationEmail() throws Exception {
mockMvc.perform(get("/resend").principal(getSpoofedPrincipal()))
.andExpect(status().isFound())
.andExpect(redirectedUrl("/notactive"));
}
如您所见,我使用 Spring 的 MockMVC 作为集成测试的主要入口点,在本例中是重新发送确认电子邮件。
那么我该怎么做:
- 阻止它发送任何电子邮件?
- 检查它是否发送了正确的电子邮件?
任何意见是极大的赞赏!