TestCafe 如何验证 Active Directory Windows Internet Explorer 中的安全提示
TestCafe How to authenticate Active Directory Windows Security prompt in Internet Explorer
我正在测试的网站的身份验证是通过 Active Directory (AD) 进行的。通常,您会从网站 URL 重定向到活动目录页面,该页面如下所示:
以上是在 Chrome、FireFox 和 Edge 上的显示效果。使用角色登录完美无缺。
但是,这在 Internet Explorer 上不起作用。在 IE 上,您不会被重定向到该页面,而是会收到以下提示 Windows 安全提示
我曾尝试使用 httpAuth 进行身份验证,但没有成功:
fixture `Login Tests`
.page `https://myurl.com`
test
.httpAuth({
username: "myusrename",
password: "mypassword",
domain: 'MYDOMAIN'
})("Sign in with valid credentials successfully signs in", async t => {
await t
.expect(Selector("title").innerText).eql("ExpectedTitle")
});
以上测试在所有其他浏览器中都有效(使用角色时):
test("Sign In with valid credentials successfully logs in", async t => {
await t
.useRole(validAccount)
.expect(Selector("title").innerText).eql("HRCore")
});
当运行在IE中测试时,不会出现提示,而不是自己打开IE并导航到URL。在 TestCafe IE 实例中,我看到的只是一个空白网站(重定向到 AD URL)。
所以出于某种原因,将域添加到 httpAuth 是罪过。只需删除域即可解决问题...
我正在测试的网站的身份验证是通过 Active Directory (AD) 进行的。通常,您会从网站 URL 重定向到活动目录页面,该页面如下所示:
以上是在 Chrome、FireFox 和 Edge 上的显示效果。使用角色登录完美无缺。
但是,这在 Internet Explorer 上不起作用。在 IE 上,您不会被重定向到该页面,而是会收到以下提示 Windows 安全提示
我曾尝试使用 httpAuth 进行身份验证,但没有成功:
fixture `Login Tests`
.page `https://myurl.com`
test
.httpAuth({
username: "myusrename",
password: "mypassword",
domain: 'MYDOMAIN'
})("Sign in with valid credentials successfully signs in", async t => {
await t
.expect(Selector("title").innerText).eql("ExpectedTitle")
});
以上测试在所有其他浏览器中都有效(使用角色时):
test("Sign In with valid credentials successfully logs in", async t => {
await t
.useRole(validAccount)
.expect(Selector("title").innerText).eql("HRCore")
});
当运行在IE中测试时,不会出现提示,而不是自己打开IE并导航到URL。在 TestCafe IE 实例中,我看到的只是一个空白网站(重定向到 AD URL)。
所以出于某种原因,将域添加到 httpAuth 是罪过。只需删除域即可解决问题...