You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过testcaferc配置文件设置自定义UserAgent?配置无效求助

TestCafe配置自定义UserAgent不生效的解决办法

问题原因

直接设置userAgent=TEST无效——Chrome会拒绝不符合规范的UserAgent字符串,自动恢复默认值,导致自定义标识无法生效。

解决方法

方法1:在testcaferc.json中配置完整合法的UserAgent字符串

需要传递符合浏览器规范的完整UA,可在原有UA基础上追加自定义标识,示例配置:

{
  "browsers": [
    "Chrome:emulation:userAgent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36 TEST"
  ]
}

方法2:通过clientScripts动态修改UserAgent

如果想保留浏览器默认UA的大部分内容,仅添加自定义标识,可通过注入脚本实现:

方式A:在testcaferc.json中全局配置

{
  "clientScripts": [
    {
      "content": "Object.defineProperty(navigator, 'userAgent', { get: () => navigator.userAgent + ' TEST' });"
    }
  ]
}

方式B:在测试文件中单独配置

test.page({
    url: 'https://www.whatismybrowser.com/detect/what-is-my-user-agent/',
    clientScripts: [{
        content: "Object.defineProperty(navigator, 'userAgent', { get: () => navigator.userAgent + ' TEST' });"
    }]
})('testing the user agent', async t => {
    await t.debug();
});

验证

运行测试后,在debug模式下查看页面显示的UserAgent,即可看到自定义的"TEST"标识已成功添加。

内容的提问来源于stack exchange,提问作者msilori

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 02:24:30