2014-11-23 71 views
1

我知道JDK实现电子邮件发送(通过SMTP),但我正在寻找自定义的东西,这将不是使用JDK。这样的库存在吗?我需要它来更好地测试我的应用程序。是否可以在没有JDK的情况下发送电子邮件?

+0

不是JDK,而是Java邮件? https://java.net/projects/javamail/pages/Home – SMA 2014-11-23 09:13:11

+0

我不明白你在问什么:你想在不使用JDK类的情况下执行Java代码?这不可能。无论如何,这个问题是无关紧要的。 – 2014-11-23 09:13:55

+0

如果您的意思是发送电子邮件而不使用JDK中的实现(但仍然使用Java),您也可以使用命令行程序发送电子邮件。使用'Process'(https://docs.oracle.com/javase/8/docs/api/java/lang/Process.html) – 2014-11-23 09:19:03

回答

0

也许使用apache commons exec运行是这样的:

echo "hello" | mail -s subject [email protected] 
+0

这是真的,通过这种方式邮件到远程域不是支持? – muradin 2014-11-23 09:16:05

+0

嗯。为什么?这使用O/S的邮件命令,我猜它可能发送到任何地方。 – cherouvim 2014-11-23 09:18:08

+0

但是,当我没有任何有效的邮件服务器安装在我自己的域名(例如我的电脑)?交易需要通过有效的服务器完成,我的意思是例如'smtp.google.com',有一些步骤必须通过,然后你的邮件可以通过该服务器进行路由,例如认证等等 – muradin 2014-11-23 09:22:43

0

我需要我的应用程序的可测试性更好。

使用来自java-mail的邮件功能。这是如何完成的。

对于你的测试用例使用一个单身的虚拟实现,或者只是跳过你邮件的transfer部分。

可测性与它无关。

如果我在项目中使用邮件功能,我通常会将邮件发送到测试环境中的一个帐户,覆盖原始目标。但在那之后,e.i.在集成和qa环境中,邮件已发送给测试人员。

在自动化测试中,要么根本不测试,要么模拟通话。以任何方式验证都应在发送邮件之前完成。

相关问题