0

我有一个运行一些 Bazel 测试的构建文件,就像 Azure 管道上的这样

jobs:
  - job: "results_extraction"
    timeoutInMinutes: 720

    steps:
      - bash: |
          ./install_conda_environment.sh update
        displayName: "Update conda env"

      - bash: |
          source ${HOME}/.bashrc
          bazel test test1
          --test_output=all
          --test_summary=detailed
        continueOnError: true
        displayName: "Run test1"

      - bash: |
          source ${HOME}/.bashrc
          bazel test test2
          --test_output=all
          --test_summary=detailed
        continueOnError: true
        displayName: "Run test2"

     - task: PublishTestResults@2
          condition: succeededOrFailed()
          inputs:
            testResultsFiles: 'bazel-testlogs/**/*.xml'
            testRunTitle: 'Publish test results.'
          displayName: 'Bazel Tests Publish Results'

但是当我进入 bazel-test 目录时,我找不到这些测试(我在寻找 test.xml)。我的猜测是 bazel 沙盒会删除它,但我可能是错的。我想要做的就是提取这些测试中的每一个测试的结果。bazel 中是否有一个标志可以让我创建包含每个测试状态的详细测试结果?

4

1 回答 1

1

如果您更改测试以将文件写入$TEST_UNDECLARED_OUTPUTS_DIR(bazel 在运行测试时设置的环境变量),则文件将保存在bazel-testlogs/<package>/<target>/test.outputs/outputs.zip. 然后,您可以编写一些东西来收集并处理它们。

于 2021-02-23T00:25:34.013 回答