TestCafe 如何在 Internet Explorer 中验证 Active Directory Windows 安全提示

Posted

技术标签:

【中文标题】TestCafe 如何在 Internet Explorer 中验证 Active Directory Windows 安全提示【英文标题】:TestCafe How to authenticate Active Directory Windows Security prompt in Internet Explorer 【发布时间】:2020-05-27 08:51:36 【问题描述】:

对我正在测试的网站的身份验证通过 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)。

【问题讨论】:

【参考方案1】:

因此,出于某种原因,将域添加到 httpAuth 是一种罪过。只需删除域即可解决问题...

【讨论】:

以上是关于TestCafe 如何在 Internet Explorer 中验证 Active Directory Windows 安全提示的主要内容,如果未能解决你的问题,请参考以下文章

如何在 TestCafe 中发布顺序 POST 请求?

如何使用 Testcafe 测试推送通知

TestCafe - 如何在 testcaferc 文件中为 testGrep 提供多个正则表达式

如何在 Testcafe 断言中的 1 个可能参数上添加 2 个常量?

如何关闭 testcafe runner

如何在chrome docker镜像上从本地运行testcafe?