如何在e2e测试中使用预览电子邮件或类似内容?

时间:2018-03-19 09:32:07

标签: javascript angular email express testing

我有一个带有快速后端的角形前端。由于对数据库的写入限制,我的应用程序严重依赖于使用电子邮件。我正在编写一些角度/量角器e2e规范,其中我想在快速方面包含preview-email生成的电子邮件预览。

问题是电子邮件预览不会在量角器使用的自动镀铬窗口中打开。我认为这是opn如何工作的核心部分,这是预览电子邮件用于打开电子邮件的内容。 Opn在我的linux机器上使用xdg-open,导致文件在新的chrome实例或现有chrome窗口的选项卡中打开,当一个已经打开,但不在自动chrome窗口中。有没有办法在自动量角器/ selenium / webdriver窗口中打开预览电子邮件,或者以其他方式测试e2e规范中生成的电子邮件的内容?

代码段,以阐明如何在各种环境中使用预览电子邮件:

return new Promise<void>((resolve, reject) => {
  switch (process.env.NODE_ENV) {
    case 'acceptance':
      return resolve();

    case 'production':
        transporter.sendMail(message, function (error, response) {
          if (error) {
            return reject(error);
          }
          return resolve();
      });

    default:
      previewEmail(message).catch(console.error);
      return resolve();
  }
});

因此,在默认情况下(开发环境)使用了previewEmail,导致在开发人员默认浏览器中打开一个新选项卡。在生产中,env nodemailer将发送电子邮件。在分期(接受)环境中,什么都不会发生。

0 个答案:

没有答案