**已关闭。**此问题正在寻求书籍、工具、软件库等的建议。它不符合Stack Overflow guidelines。目前不接受答复。
我们不允许问题寻求书籍,工具,软件库等的建议。您可以编辑问题,以便可以用事实和引用来回答。
昨天关门了。
Improve this question
如果用户启用了MFA,我正在测试的应用程序将发送OTP。我需要为该功能创建E2 E测试。我可以使用什么工具来读取Cypress测试中的传入消息并在登录时输入OTP?
我知道有一个付费服务Mailosaur允许这一点,但我正在寻找廉价/免费的解决方案。
2条答案
按热度按时间ddrv8njm1#
如果将otplib添加到项目中,则可以完全忽略电子邮件包。
otplib
是一个JavaScript一次性密码(OTP)库,用于OTP生成和验证。它实现了HOTP-RFC 4226和TOTP-RFC 6238,并根据各自RFC规范中提供的测试向量进行测试。这些数据集可以在tests/data文件夹中找到。
此库还与Google Authenticator兼容,并包含允许您使用Google Authenticator的其他方法。
向
cypress.config.js
添加任务,然后调用cy.task('getOTPToken', secret)
并在应用中使用返回的令牌(而不是通过电子邮件发送的令牌)。72qzrwbm2#
回复有点晚,因为我们积极使用的解决方案似乎没有列出。
我们也遇到过类似的问题(尽管我们的多因素身份验证系统是基于SMS的)。
由于我们不想绕过我们的生产安全机制或重新开发演示模式,我们使用了一个平台,允许在我们的应用程序中为用户分配临时虚拟电话号码。该平台名为GetMyMFA,它允许我们在24小时内审查和批准我们的应用程序。
要使用它,我们只需在生产应用程序中创建一个用户,并附上一个虚拟电话号码,我们可以在App Store审查过程中真实的启用和禁用该号码。这样,苹果只需登录到平台(使用特定的私人用户名/密码),SMS MFA登录代码就会显示在网站上。
建立这一平台的目标是:
我们的应用程序在24小时内通过该系统获得批准,用户可以轻松安全地禁用。