我正在身份验证页面上运行testcafe测试,可以看到在将请求发送到网站时,testcafe正在修改/删除/添加标头,这使我无法在此页面上执行2FA
问题一出,我就尝试使用Selenium进行自动化,以确认这是testcafe问题。由于selenium不会创建代理来插入js脚本并使网站自动化,因此我可以使用selenium来实现自动化,但由于该网站是在react中开发的,因此我想使用testcafe。
await t.typeText(this.emailInput, config.userEmail)
.click(this.nextButton)
.typeText(this.passwordInput, config.userPassword)
.click(this.nextButton)
.click(this.otpOption)
.typeText(this.otpInput, this.token)
.click(this.signinButton)
}
单击下一个按钮时,我应该具有2FA表单,要求输入代码,但页面显示无法进行身份验证(发生了某些错误),并且我看到BeginAuth端点的响应代码为222没有任何回应,而不是200。
我用来进行身份验证的URL如下所示:
https://login.microsoftonline.com/ client uuid
/ oauth2 / authorize?response_type = code%20id_token&response_mode = form_post&client_id = client uuid
&scope = openid&x-client-Ver = 4.0.0
答案 0 :(得分:2)
Testcafe团队发现这是testcafe-hammerhead的错误,已经修复,将在下一版本中包含。
https://github.com/DevExpress/testcafe-hammerhead/issues/2052
目前,我正在自动生成cookie并将其发送到标题中。