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