比较流行的Java的SMTP开源组件有:
其中 GreenMail 是最适合做单元测试的,它本身并不会发送邮件,但支持SMTP, POP3, IMAP。发布的时间也很长了,不过知道的人并不多。如果做发送邮件代码的单元测试,不想走邮件服务器,也不想mock的话,GreenMail 是个很好的选择。
引用
GreenMail is an embeddable, lightweight and sandboxed email server for testing and developing purposes
http://www.icegreen.com/greenmail/
目前版本:greenmail-1.3.1b.jar
Roadmap显示在1.4+版本中将会用 SubEthaSMTP 代替目前GreenMail自身的SMTP代码。
private static void testSMTPCode() throws Exception {
GreenMail greenMail = new GreenMail();
greenMail.start();
// Sending
GreenMailUtil.sendTextEmailTest("to@localhost.com", "from@localhost.com", "subject", "body");
// Retrieving
String msg = GreenMailUtil.getBody(greenMail.getReceivedMessages()[0]);
System.out.println(msg);
greenMail.stop();
}
private static void testSMTPSCode() throws Exception {
GreenMail greenMail = new GreenMail();
greenMail.start();
// Sending
GreenMailUtil.sendTextEmailSecureTest("to@localhost.com", "from@localhost.com", "subject", "body");
// Retrieving
String msg = GreenMailUtil.getBody(greenMail.getReceivedMessages()[0]);
System.out.println(msg);
greenMail.stop();
}
private static void testSpecialPort() throws Exception {
ServerSetup ss = new ServerSetup(3025, null, "smtp");
GreenMail greenMail = new GreenMail(ss);
greenMail.start();
GreenMailUtil.sendTextEmail("to@localhost.com", "from@localhost.com", "subject", "body", ss);
greenMail.stop();
}
分享到:
相关推荐
本篇文章将通过一个初学者友好的小例子——使用greenmail测试邮件,来介绍如何结合Maven进行实际的开发工作。 首先,让我们了解Maven的核心概念。Maven使用Project Object Model (POM)来描述项目,POM中包含了项目...
GreenMail是一款开源的邮件服务器模拟器,主要用于测试和开发电子...通过以上介绍,我们可以看到GreenMail是一个强大的邮件测试工具,它为开发者提供了便利的邮件服务器模拟环境,有助于提升邮件功能的开发效率和质量。
综上所述,"greenmail-1.3.1b" 是一个专注于电子邮件测试的Java库,提供了丰富的文档和源代码,便于开发者集成到自己的项目中进行测试和调试。通过阅读和分析这些文件,我们可以深入理解其工作流程,掌握如何在实际...
Greenmail-Spring模块可能包括了配置类、邮件模拟服务以及与Spring上下文的集成,帮助开发者在单元测试和集成测试中模拟收发邮件的行为,无需实际连接到外部邮件服务器。 描述中的"saga-lib.zip"提到了Guice集成,...
Java源码直接复制到JSP项目中,常常用于快速实现功能或者进行测试。在这个场景下,我们关注的是Greenmail——一个电子邮件集成测试服务器...在实际应用中,结合JSP和后端服务,你可以构建出强大的邮件测试和管理功能。
它允许开发者在不实际连接到真实邮件服务器的情况下,测试邮件客户端或服务端的代码。在ACCP6.0课程中,学员们将学习如何在VS2010集成开发环境中使用C#调用GreenMail的API,实现邮件功能的测试。 二、C#与GreenMail...
GreenMail是一个开源的Java邮件服务器模拟器,用于测试和演示目的。尽管它本身是用Java编写的,但我们可以利用C#的平台无关性,通过.NET的Java互操作性(例如使用 IKVM 或 Jni4Net)来引入GreenMail到我们的C#项目中...
GreenMail是用于测试目的的直观,易于使用的电子邮件服务器测试套件。 支持SMTP,POP3,具有SSL套接字支持的IMAP,以及可配置的用户帐户和凭据。 全部采用100%Java语言。 我们已移动到集线器:...
GreenMail是第一个也是唯一一个提供用于从Java接收和检索电子邮件的测试框架的库。 转到以获取详细信息: :com.icegreen:greenmail:<> GreenMail项目欢迎任何贡献,因此请继续并进行分叉/打开请求请求! 请...
同时,也可以使用模拟邮件服务器(如GreenMail)进行单元测试,确保邮件发送功能的正确性。 总的来说,JavaMail API为Java开发者提供了强大且灵活的邮件处理能力,是实现自动化邮件发送不可或缺的工具。通过深入...
可以使用模拟邮件服务器(如GreenMail)来进行单元测试,避免实际发送邮件对用户造成干扰。 通过理解和应用上述知识点,你可以构建一个高效、稳定的JavaMail工具类,实现邮件的发送、接收和管理功能。同时,结合`...
绿邮项目(GreenMail)是一个开源的Java电子邮件测试库,由官方负责人维护。这个压缩包“Java_绿邮项目的官方负责人.zip”包含了关于这个项目的一些关键资料,特别是“greenmail_master.zip”可能包含了项目的源代码...
10. **测试**:在开发过程中,可以使用`Testcontainers`库和模拟邮件服务器(如GreenMail)进行单元测试,确保邮件发送功能的正确性。 通过以上知识,我们可以构建一个安全、可靠的商务邮件系统。这个压缩包可能...
11. **自动化测试**: 在开发过程中,为了测试邮件功能,可以使用模拟邮件服务器,如GreenMail,它可以在内存中接收和存储发送的邮件,便于进行单元测试。 12. **邮件模板**: 对于大量发送相同内容的邮件,可以使用...
4. **邮件模拟服务器**: 在测试阶段,为了避免实际发送邮件,可以使用模拟邮件服务器,如GreenMail。这个服务器可以在本地运行,接收并存储发送的邮件,以便开发者检查邮件格式和内容。 5. **邮件发送过程**: - **...
可以编写单元测试或集成测试来验证邮件发送功能是否正常工作。通常,测试环境会使用模拟邮件服务器,如GreenMail,以避免实际发送邮件。 这个"springboot2-email-master"项目提供了一个完整的例子,展示了如何在...
为了测试和调试邮件发送功能,可以使用像`GreenMail`这样的测试工具。GreenMail是一个服务器模拟器,可以在本地环境接收和检查发送的邮件,无需实际连接到SMTP服务器。 8. **最佳实践**: - 为避免暴露敏感信息,...
5. **测试与调试**:项目可能包含单元测试或集成测试,确保邮件功能的正确性。 通过学习和分析这个基于JavaMail的Android邮箱项目源码,开发者可以深入理解如何在Android平台上使用JavaMail API实现邮件功能,为...
10. **测试**:在开发过程中,可以使用像`GreenMail`这样的测试库来模拟邮件服务器,以便在不实际发送邮件的情况下测试代码。 总之,JavaMail和Apache Commons Email是强大的邮件处理工具,它们极大地简化了在Java...
工具方面,有一些可视化的邮件调试工具,如Eclipse的插件GreenMail,可以帮助开发者测试邮件发送功能。 总之,JavaMail是Java开发中处理邮件的核心库,它提供了丰富的API来满足各种邮件需求。理解和熟练运用...