0

如果我:

  • 在 travis 中运行构建,并且

  • 测试正确通过,但是

  • 将覆盖结果上传到 codecov 时出现问题,

...特拉维斯继续进行部署。在这种情况下,如何阻止 travis 部署?

不论上传失败的部署:

继续部署.

这是我的.travis.yml

dist: trusty
language: python
python:
  - '3.6'

# Install tox and codecov
install:
  - pip install tox-travis
  - pip install codecov

# Use tox to run tests in the matrix of environments
script:
- tox -r

# Push the results back to codecov
after_success:
  - codecov --commit=$TRAVIS_COMMIT"

# Deploy updates on master to pypi, which will only succeed if there's been a version bump
deploy:
  provider: pypi
  skip_cleanup: true
  skip_existing: true
  user: me
  password:
    secure: "stuff"
  on:
    branch: master
4

1 回答 1

0

根据此https://bitbucket.org/ned/coveragepy/issues/139/easy-check-for-a-certain-coverage-in-tests,如果将 --fail-under 开关添加到覆盖率报告命令,如果代码覆盖率低于给定百分比,它将以非零退出代码(travis 将其视为失败)退出。

这将使您的 .travis.yml 文件的脚本部分看起来像:

script
 - coverage run --source="mytestmodule" setup.py test
 - coverage report --fail-under=80

当然,你可以用你想要的任何百分比替换 80。

于 2020-01-09T08:47:09.987 回答