邮件服务器模拟器用于Cargo内部集成测试

3
我正在测试一个Web应用程序,包括JUnit测试、在运行Tomcat的Cargo容器内进行的集成测试和HTMLUnit等。现在我遇到了一个问题。
使用某些输入信息,我的Web应用程序将生成一个zip文件,在创建过程完成后,我可以下载该文件。至少使用HTMLUnit和Cargo容器测试不同的用例时没有问题,并且单个Tomcat中启动了所有所需的应用程序和后端。
我的Web应用程序的新版本正在向配置的电子邮件地址发送(javax.mail)生成的文件(我之前手动发送过该邮件),但我无法弄清楚如何集成测试它发送的内容以及是否成功。
是否有任何模拟邮件服务器或类似于此的东西,我可以轻松地在我的Cargo测试容器内运行,将其配置在我的应用程序中并断言它接收到的所有邮件?
我不想使用静态邮件服务器运行在我的测试区域之外,因为这些测试必须在不同的环境(开发,Hudson,集成环境等)中运行,并且我将依赖其状态和可用性。
如果没有,也许还有其他解决方案吗?非常感谢。

请检查我的答案:https://dev59.com/12oy5IYBdhLWcg3wYM2B#22043597 - m-szalik
谢谢,但这不符合我的要求,因为发送电子邮件的应用程序真正部署在服务器上,不能被触碰。 - vvursT
1个回答

3
我会选择Dumbster。它是一个虚假的SMTP服务器,具有可查询的API,用于查找发送的消息。
您可以在测试开始时启动它,并在结束时检查发送的消息。(无需在货物中部署)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接