【问题标题】:Testcafe tests fail due to new headers **`sec-ch-ua` and `sec-ch-ua-mobile`** added on Chrome Version 89.0.4389.72由于 Chrome 版本 89.0.4389.72 添加了新的标头 **`sec-ch-ua` 和 `sec-ch-ua-mobile`**,Testcafe 测试失败
【发布时间】:2021-07-07 02:39:54
【问题描述】:

我正在运行一个基本的自动化 testcafe 测试,该测试单击一个按钮(触发 API)并等待页面上显示响应,以便测试可以继续。只有当我在最新版本的 Chrome、Firefox、Opera 和 Edge 上运行场景 VIA TESTCAFE 时,该网站才会在单击该按钮后出现来自该 API 调用的 500 错误。当在 testcafe 中提到的旧版本浏览器上运行测试时,或者当我在最新浏览器上手动运行测试时,应用程序和测试通过。

经过一番调查,我注意到 Chrome v89 添加了两个默认发送的新请求标头:sec-ch-uasec-ch-ua-mobile 仅在我手动运行测试时,但是当我通过 TestCafe 运行测试时,这两个标头未通过,这会中断对 API 的调用。

在此处找到 Chrome 添加的新功能:

sec-ch-ua: "Chromium";v="86", "\"Not\\A;Brand";v="99", "Google Chrome";v="86"
sec-ch-ua-mobile: ?0

我有“testcafe”:“^1.13.0”,使用 Chrome 最新版本 89.0.4389.72(64 位)

任何人都知道如何使 TestCAfe 测试的行为与我使用最新的 Chrome 手动运行测试时的行为完全相同(添加这 2 个标头)?

【问题讨论】:

    标签: javascript google-chrome testing testcafe client-hints


    【解决方案1】:

    尝试更新到 testcafe v.1.14.0。如果问题依旧,请在TestCafe仓库中创建issue,并分享一个可以在本地复现的例子。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-04-08
      • 1970-01-01
      • 2012-03-10
      • 1970-01-01
      • 2021-05-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多