Выполнение тестов Jasmine на Azure DevOps как часть процесса автоматической сборки - PullRequest
0 голосов
/ 30 января 2020

Учитывая, что в состав сборки входит приложение Angular, в нем есть тесты Jasmine. Что мне нужно сделать, чтобы результаты этих тестов были опубликованы как часть сборки и, что еще лучше, закрепить результат сборки на успешном выполнении всех тестов Jasmine?

1 Ответ

3 голосов
/ 30 января 2020

Это можно сделать с помощью следующих сценариев и задач:

  1. выполнить ng test
  2. publi sh результаты теста с PublishTestResults задача
  3. publi sh результаты покрытия кода с PublishCodeCoverageResults задача

В Azure конвейерах YAML файл, это может выглядеть следующим образом:

# perform unit-tets and publish test and code coverage results
- script: |
    npx ng test --watch=false --karmaConfig karma.conf.ci.js --code-coverage
  displayName: 'perform unit tests'    

- task: PublishTestResults@2
  condition: succeededOrFailed()
  inputs:
    testResultsFormat: 'JUnit'
    testResultsFiles: '**/TESTS-*.xml'
  displayName: 'publish unit test results'

- task: PublishCodeCoverageResults@1
  displayName: 'publish code coverage report'
  condition: succeededOrFailed()
  inputs:
    codeCoverageTool: Cobertura
    summaryFileLocation: '$(Build.SourcesDirectory)/coverage/cobertura-coverage.xml'
    failIfCoverageEmpty: true     
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...