我需要在测试脚本中使用一次性电子邮件地址域。目前,我们使用的是mailinator,但是在达到一定数量的批量电子邮件之后,它会阻止用户。

还有其他更好的方法来实现此目的吗?

评论

您可以使用ahem.email。它会收到stabdard smtp电子邮件,并提供易于使用的Web ui或restful api来使用电子邮件。

#1 楼

我在gmail上使用了一个技巧,可以在任何地址上附加+ string。我填写的字符串是Unix时间戳。

原始电子邮件地址:yourName@gmail.com

测试电子邮件地址:yourName+1510250387@gmail.com

评论


完善的内置解决方案。我也用过这个。不必摆弄大量的临时地址和密码。您将所有邮件都放在一个收件箱中,但是您正在测试的系统认为它们都是唯一的用户。

–万千
17年9月9日在18:26

作为副作用,您还正在测试是否允许电子邮件地址中的s +。 (我曾经有一个网络邮件发送器,将+解释为空格,因此拒绝了我的邮件地址。)

–PaŭloEbermann
17年11月9日在20:10

这不是特定于gmail的,大多数电子邮件提供商都将name + stuff @ domain邮件传递到name @ domain。

–Džuris
17年11月9日在22:19

@Wildcard实际上,它是电子邮件规范的一部分,但是gmail是(第一个)实际实现它的提供商。与期间相同。 te.st@com.com与test@com.com相同

–抢夺
17年10月10日在6:24

@Rob实际上,规范要求将a@b.com和a+a@b.com解释为不同的电子邮件地址。 Gmail只是决定将两者都分配给同一帐户所有者(根据规定,任何人都不得拥有一个以上的电子邮件地址)。 +是Gmail的发明

– slebetman
17年10月10日在15:47

#2 楼

对于手动测试(即,目视检查电子邮件),应使用本地SMTP服务器,例如Bhavani。我过去曾经使用Mailcatcher,并且非常喜欢。

评论


mailtrap.io也是一个很好的主机(托管解决方案)

– Willoller
17年11月9日19:50



#3 楼

每当您需要测试被测应用程序与外部服务交互的事物时,您都有两种选择:

1)桩连接
2)使用真实的服务

然后可以选择使用内部或外部存根或服务。

存根是在其中构建伪接口的地方,它足以完成要测试的应用程序的测试。问题是,对于诸如SMTP之类的东西,您有很多很多错误情况等,为了正确存根,您不妨编写自己的SMTP服务器。或者,您可以使用Google“存根smtp服务器”中出现的众多选项之一。

第二个选项是使用真实的SMTP服务器(或者更好的是几个不同的SMTP服务器)。对于集成测试,这是最好的方法。这是因为对标准的理解可能有所不同,并且您需要确保您的应用程序可以对标准进行不同的解释。

然后,您可以选择内部管理,免费外部管理或收费内部管理服务。如果您要测试计划收费的任何内容,我强烈建议您在内部托管该服务,或者在您与该服务达成某种协议的外部托管该服务。例如,对于mailinator,任何人都可以阅读已发送到给定收件箱的邮件。如果您的竞争对手发现您使用的是世界范围内可公开获得的服务来测试新产品,那么他们就有机会找出您正在研究的内容。

#4 楼

我已经使用hMailserver之类的开源工具通过本地smtp服务器设置处理了该方案。设置后,您可以定义自己的域和电子邮件ID。

#5 楼

我使用https://www.guerrillamail.com/inbox,它具有供您使用的精选域,可以克服阻塞问题。

#6 楼

我不明白为什么您需要丢弃电子邮件地址。您不能只是删除帐户并在测试中再次使用相同的电子邮件地址吗?

我会看看Mailtrap,他们提供了一项服务,您可以使用该服务来捕获从您的邮件发送来的邮件服务器,而不将其发送到某个地方的真实收件箱。另外,我认为您可以使用其API创建邮箱,接收和检查电子邮件内容等。

#7 楼

有各种在线解决方案可为您提供无限的电子邮件地址进行测试。我们正在使用Mailosaur和Cypress来测试我们的注册和密码重置过程。