Playwright版本升级后Browserstack Automate仪表盘未记录测试的问题求助
解决方案
一、无需升级版本解决原错误
原错误源于本地Playwright与Browserstack端acceptDownloads参数的取值规则不匹配,即便测试未涉及下载功能,也会因默认参数格式不符触发校验报错。解决方式如下:
- 在调用
browser.newPage()时,显式指定acceptDownloads为枚举值,替代原可能使用的布尔值:// 替换acceptDownloads: true/false的写法 const page = await browser.newPage({ acceptDownloads: 'accept' // 可选值:'deny' / 'internal-browser-default' }); - 若在
playwright.config.js中做全局配置,同样修改为枚举值:use: { acceptDownloads: 'internal-browser-default' }
通过强制统一参数格式,可绕过版本不匹配导致的参数校验错误。
二、在Playwright 1.39.0版本下恢复Browserstack测试记录
1. 确认版本支持状态
先核实Browserstack官方文档,确认其Automate服务是否已正式兼容Playwright 1.39.0。若未正式支持,可等待官方更新,或在Browserstack控制台的测试设置中开启Beta版本支持通道。
2. 补全配置关键项
确保playwright.config.js中的Browserstack配置包含测试识别与记录所需的核心参数:
const config = { projects: [ { name: 'browserstack-chrome', use: { connectOptions: { userName: process.env.BROWSERSTACK_USERNAME, accessKey: process.env.BROWSERSTACK_ACCESS_KEY, }, browserName: 'chrome', browserVersion: 'latest', // 开启录屏与截图记录 recordVideo: 'on', recordScreenshots: true, // 必须配置build和name,否则仪表盘无法识别测试归属 build: 'playwright-1.39-build', name: 'sample-test-case' } } ] };
3. 同步升级Browserstack SDK
若使用了@browserstack/playwright-sdk依赖,需将其升级到支持1.39.0的版本:
npm update @browserstack/playwright-sdk
4. 排查运行日志
测试运行时,查看终端输出的Browserstack日志,若存在版本不兼容、权限错误或配置缺失的警告,针对性修复即可。
内容的提问来源于stack exchange,提问作者zzz
相关产品推荐
相关产品推荐

