使用CasperJS或PhantomJS检查电子邮件

时间:2014-04-01 22:11:43

标签: automated-tests phantomjs casperjs

我希望使用CasperJS / PhantomJS自动测试一个广泛使用电子邮件作为其流程一部分的项目,但是当我需要以自动方式检查电子邮件内容时,我一直遇到问题。 / p>

这些工具非常能够遍历许多电子邮件服务的HTTP版本,但是维护测试以跟上对外部服务所做的UI更改并不是我想做的事情。

CasperJS或PhantomJS是否能够使用IMAP或POP3来检索邮件,还是有更常见的解决方案?

4 个答案:

答案 0 :(得分:2)

您可以将任何nodejs模块与Casper一起使用:

" Like PhantomJS, CasperJS allows using nodejs modules installed through npm."

所以你只需要check the npm repo and test which lib suits you.

答案 1 :(得分:2)

您可以使用casperjs \ Phantomjs进行导航和自动化,但是对于邮件进程,您必须使用nodejs nodemailer module。安装nodejs后请尝试以下命令。

npm install nodemailer@0.7.1。

这将安装nodemailer软件包并发布您可以安装sendgrid sendmail等邮件客户端的帖子,或者您可以使用nodemailer直接传输,但这可能会导致邮件传递延迟。

请检查nodemailer脚本并使用以下命令运行脚本: node scriptname.js

答案 2 :(得分:1)

PhantomJS(以及扩展名,Casper)是一个网络浏览器 - 据我所知,它无法使用POP或IMAP。我首先想到的方法是使用一个单独的系统进行测试自动化(至少,对于那些需要验证电子邮件的测试),例如:使用Python,Ruby或Node.js,在这些测试中通过命令行调用Casper,然后使用单独的工具检查和验证电子邮件。

答案 3 :(得分:1)

您还可以使用带有mailcatcher(ruby)或maildev(节点)等Web界面的dev smtp服务器。

他们还有一个rest api,它以比使用Web界面更稳定的方式返回电子邮件。

我没有测试过,但很快就会测试。