Как объединить результаты каждого из тестов bazel?

У меня есть файл сборки, в котором выполняются некоторые тесты 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 флаг, который позволяет мне создавать подробный результат теста, содержащий статус каждого теста?

1 ответ

Если вы измените свои тесты, чтобы записать файлы в <tcode id="3424882"></tcode> (переменная среды, которую устанавливает bazel при запуске тестов), файлы будут сохранены в bazel-testlogs/<package>/<target>/test.outputs/outputs.zip. Затем вы можете написать что-нибудь, чтобы собрать их и обработать.

Другие вопросы по тегам