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

Bitbucket Pipeline中无法查看pytest生成的JUnit测试报告求助

解决Bitbucket Pipeline无法显示pytest JUnit测试报告的问题

核心原因

Bitbucket Pipelines不会自动扫描所有生成文件识别测试报告,必须显式声明测试报告的路径,否则平台无法解析并展示报告内容。

解决方案

修改你的Pipeline配置,在测试步骤中添加reports字段,指定JUnit XML报告的位置:

- step: &run_integration_test
    name: run_integration_test
    caches:
      - pip
    script:
      - cd tests/integration
      - pytest --junitxml=test-reports/report.xml
      - ls -ltr test-reports
    # 添加该字段,指定JUnit报告的根相对路径
    reports:
      junit: tests/integration/test-reports/report.xml

额外检查点

  1. 确认路径匹配
    你日志里的报告生成路径/opt/atlassian/pipelines/agent/build/tests/integration/test-reports/report.xml,和配置中reports字段的路径完全对应,这部分无需调整。

  2. 处理步骤失败的影响
    日志中存在exit status 1的错误(来自terragrunt操作),若该错误导致整个步骤标记为失败,可能影响报告收集。可通过以下方式规避:

    • 在非关键失败命令后添加|| true,不终止步骤
    • 临时关闭错误终止逻辑,执行完测试后恢复:
      script:
        - set +e  # 临时关闭错误终止
        # 你的terragrunt相关命令
        - set -e  # 恢复错误终止
        - cd tests/integration
        - pytest --junitxml=test-reports/report.xml
        - ls -ltr test-reports
      
  3. 验证报告完整性
    在步骤中添加cat tests/integration/test-reports/report.xml命令,确认生成的XML格式正确无损坏——格式错误的JUnit XML会导致Bitbucket无法解析展示。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 12:22:44