email - 如何使用 mail-listener2 获取最新电子邮件

标签 email protractor

我正在使用 mail-listener2 来监控电子邮件帐户,以检查是否已收到电子邮件作为测试的一部分。

我使用了此处定义的相同实现:此处:Fetching values from email in protractor test case

但是,getLastEmail() 返回旧电子邮件,而不是邮件监听器2 启动后收到的电子邮件。它返回第一封未见过的电子邮件。

我研究过是否可以使用不同的 mail-listener2 配置来解决这个问题,但我没有找到任何东西。我还尝试在返回的邮件上使用 .last() ,但这也不起作用。

有人有配置解决方案或自定义解决方案来帮助解决此问题吗?

最佳答案

我认为这可能对您有帮助,我使用您关注的同一篇文章实现了 mail-listener2,这对我来说非常有用。我刚刚添加了一些额外的参数:

在我的配置的 onPrepare 下,我创建了一个日期:

var emailDate = new Date().getTime();

然后在我的mailListener初始化下:

    var mailListener = new MailListener({
        username: ...
        password: ...
        ...
        searchFilter: ["NEW", "UNSEEN", ["SINCE", emailDate]]
    });

这应该将 mailListener 配置为仅查找在 emailDate 时间之后发送的电子邮件,该时间是在测试开始时创建的。您还可以指定确切的日期,即 ['SINCE', 'May 20, 2010']

有关 node-imap 的更多信息文档(mailListener2 使用的)

关于email - 如何使用 mail-listener2 获取最新电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41454775/

相关文章:

iphone - 如何在xcode上创建电子邮件表单?

javascript - 在 Protractor 中获取按钮文本

angularjs - 基于 AngularJS 的 Web 应用程序的 Web UI 回归测试

mocking - 使用角度 2 Protractor 进行 e2e 测试

html - 在 HTML 电子邮件中是否有等效的 CSS max-width?

java - 使用小时和分钟按日期过滤电子邮件

node.js - 如何获取服务器ip地址以在nodejs中发送邮件

java - SMTP 主机 :smtp. Outlook.com 中的连接错误,端口:25

javascript - Protractor 失败并显示 'angular never provided resumeBootstrap'

javascript - 处理多个相似的期望