如何将Playwright测试结果保存为Bitbucket Pipeline制品?配置问题求助
解决Bitbucket Pipeline无法保存Playwright测试结果的问题
1. 确认测试结果的实际生成路径
Playwright默认在当前工作目录生成test-results,但Pipeline环境中可能因工作目录变更、测试配置自定义输出路径导致路径不匹配。
- 在
playwright test命令前添加目录检查命令,确认测试结果是否生成:- pwd && ls -la - 检查
playwright.config.js中的outputDir配置,若自定义了路径,需同步修改artifacts匹配规则:// playwright.config.js module.exports = { outputDir: './custom-test-results', // 若有此配置,artifacts需对应改为"custom-test-results/**" };
2. 修正Bitbucket Artifacts的路径匹配规则
Bitbucket的artifacts匹配逻辑对文件夹的处理需要明确包含内部文件:
- 将原配置中的
**/test-results改为test-results/**,确保包含文件夹下所有内容:artifacts: - "test.txt" - "test-results/**"
3. 强制Playwright保留测试输出
默认情况下,Playwright仅在测试失败时生成test-results,若Pipeline中测试全通过,文件夹不会生成。可通过两种方式强制保留:
- 在配置文件中设置:
// playwright.config.js module.exports = { retainOutputOnSuccess: true, }; - 或在命令行添加参数:
- playwright test --retain-output-on-success
4. 排查权限问题(极少数场景)
若Pipeline运行用户无写入权限,可手动创建文件夹并赋予权限:
- mkdir -p test-results && chmod 777 test-results - playwright test
验证步骤
修改配置后,在playwright test命令后添加目录检查,确认文件生成:
- ls -la test-results
通过Pipeline日志可直接查看测试结果文件夹的内容,快速定位问题。
内容的提问来源于stack exchange,提问作者Max Randle
相关产品推荐
相关产品推荐

