You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

升级后Protractor调用performance日志报错:log type 'performance' not found

解决Chrome 75下Protractor获取performance日志报错的问题

我来帮你梳理下这个问题的解决思路,毕竟我也碰到过类似的版本兼容坑:

1. 先确认ChromeDriver与Chrome版本的严格匹配

你现在Chrome是75.0.3770.100,但webdriver-manager启动的是ChromeDriver 75.0.3770.90,虽然大版本一致,但小版本的差异可能导致日志接口不兼容。你可以手动指定ChromeDriver版本来更新:

webdriver-manager update --chromeDriverVersion=75.0.3770.100

执行完后再跑测试,看看日志类型的报错是否消失。

2. 检查Protractor配置中的日志权限设置

确保你的conf.js里正确配置了日志偏好,尤其是Chrome的性能日志相关选项,可能之前的配置在新版本Chrome下需要调整:

exports.config = {
  // ...其他配置
  capabilities: {
    browserName: 'chrome',
    loggingPrefs: {
      performance: 'ALL' // 确保这个配置存在
    },
    chromeOptions: {
      perfLoggingPrefs: {
        enableNetwork: true,
        enablePage: true,
        enableTimeline: true // 可选,根据你的需求开启
      }
    }
  }
};

重点要保证loggingPrefs里的performance项设置正确,同时chromeOptions下的perfLoggingPrefs也要开启对应权限,否则Chrome不会收集性能日志。

3. 升级webdriver-manager和Protractor版本

你的webdriver-manager 12.1.5和Protractor 5.4.2都是比较老的版本,对Chrome 75的支持可能不够完善:

  • 先升级webdriver-manager:
npm install webdriver-manager@latest --save-dev
  • 再考虑升级Protractor到兼容的版本(比如7.x系列,注意Node版本要求,7.x需要Node 10+):
npm install protractor@7.x --save-dev

升级后重新更新驱动(webdriver-manager update),再测试日志功能。

4. 排查驱动启动的异常信息

报错里显示Driver info: driver.version: unknown,说明WebDriver可能没有正确识别ChromeDriver版本,你可以在启动测试前手动清理旧的驱动缓存:

webdriver-manager clean

然后重新更新驱动,确保驱动文件没有损坏。

如果上面的步骤都试过还是不行,可以尝试临时降级Chrome到75.0.3770.90版本,和ChromeDriver版本完全一致,先验证是版本兼容问题还是配置问题。

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

火山引擎 最新活动