Pytest + 覆盖率回归测试在提交拉取请求时完成(azure pipelines 和 bitbucket)

问题描述 投票:0回答:1

我在 bitbucket 存储库中有一个 python 包。我想设置 azure 管道,以便当我向该存储库的 master 分支提交拉取请求时,会运行一堆 pytest 测试。

除此之外(单独地,或者最好在 pytest 测试套件本身中)我希望运行覆盖率测试,并且如果主分支的覆盖率高于分支的覆盖率,则该测试失败正在合并到其中的是。

这个想法是,除非测试覆盖率增加,否则无法合并拉取请求。

有人知道我该怎么做吗?

bitbucket pytest azure-pipelines coverage.py pytest-cov
1个回答
0
投票

Pytest + 覆盖率回归测试在提交拉取请求时完成(azure pipelines 和 bitbucket)

恐怕我们目前无法管理 Bitbucket 存储库中的代码,而是在 Azure 管道中构建。

当我们向 Bitbucket 存储库的 master 分支提交拉取请求时,我们可以设置拉取请求验证来执行 pytest 测试:

但是,我们还需要状态检查主分支的覆盖率是否高于为拉取请求合并的分支的覆盖率。但好像Branch权限或者Bitbucket没有这个功能

如果我们将存储库从 Bitbucket 迁移到 Azure DevOps,那么我们可以添加构建验证来执行 pytest 测试并添加 覆盖状态检查。 来检查覆盖率百分比:

拉取请求的代码覆盖率

拉取请求的代码覆盖率指标和分支策略

一般步骤:

  • 添加构建验证来执行 pytest 测试
  • 添加任务以获取 master 分支的覆盖率百分比,并覆盖 Azure 存储库中
    azurepipelines-coverage.yml
    中的覆盖率目标值。
  • 添加承保政策。
© www.soinside.com 2019 - 2024. All rights reserved.