双因素身份验证
双因素身份验证 (2FA) 是一种授权机制,其中使用诸如“Google Authenticator”、“Microsoft Authenticator”等“身份验证器”移动应用程序或通过短信、电子邮件生成一次性密码 (OTP) 以进行身份验证。在 Selenium 中无缝且一致地自动化此过程是一个巨大的挑战。有一些方法可以自动化此过程。但这将在我们的 Selenium 测试之上增加另一层,并且不安全。因此,您应该避免自动化 2FA。
有几种方法可以绕过 2FA 检查
- 如果您希望仍然测试该功能,一种选择是要求您的团队创建一个在测试环境中工作的“特殊令牌”。这不需要使用移动设备,并且将确保测试过程被覆盖。
- 为测试环境中的某些用户禁用 2FA,以便您可以在自动化中使用这些用户凭据。
- 在您的测试环境中禁用 2FA。
- 如果您从某些 IP 登录,则禁用 2FA。这样我们就可以配置我们的测试机器 IP 以避免这种情况。