首页 > 解决方案 > 如何在 azure devops 管道上进行 python 覆盖测试时引发错误?

问题描述

我的测试代码有一些失败。

但管道忽略错误并运行成功。

在此处输入图像描述

我怎样才能提出错误?

天蓝色管道.yml

...
- script: |
    pipenv run coverage run --rcfile=coverage_config --source='.' manage.py test --keepdb
    pipenv run coverage xml
  displayName: 'Run tests'
  env:
    AWS_ACCESS_KEY_ID: $(AWS_ACCESS_KEY_ID)
    AWS_SECRET_ACCESS_KEY: $(AWS_SECRET_ACCESS_KEY)
    FLANB_DEBUG: 'True'

- task: PublishCodeCoverageResults@1
  inputs:
    codeCoverageTool: Cobertura
    summaryFileLocation: '$(System.DefaultWorkingDirectory)/**/coverage.xml'
    reportDirectory: '$(System.DefaultWorkingDirectory)/**/htmlcov'

...

标签: pythonpython-3.xazure-devopspipelinecoverage.py

解决方案


如何在 azure devops 管道上进行 python 覆盖测试时引发错误?

当我们使用命令行/powershell/bash 运行测试时,这似乎是一个已知问题。

发布测试失败的测试结果不会使构建失败

failTaskOnFailedTests现在,发布测试结果任务有一个参数:

- task: PublishTestResults@2
  inputs:
    testRunner: VSTest
    testResultsFiles: '**/*.trx'
    failTaskOnFailedTests: true

您可以尝试将任务Publish Test Results与 param一起使用,failTaskOnFailedTests: true而不是PublishCodeCoverageResults解决此问题。

请查看此文档以获取更多详细信息:

要使用 YAML 发布 Python 的测试结果,请参阅这些主题的生态系统部分中的Python,其中还包括其他语言的示例。

希望这可以帮助。


推荐阅读