gpt4 book ai didi

python - pytest 和 codecov : no coverage report found

转载 作者:太空宇宙 更新时间:2023-11-04 11:09:35 31 4
gpt4 key购买 nike

我创建了一个全新的Python repository基于千篇一律的模板。一切看起来都很好,所以我现在正在尝试使用 travis 和 codecov 设置测试和测试覆盖率。我是 pytest 的新手,但我正在努力做正确的事情。在网上看了之后,我最终得到了这个设置:

.travis.yml ,我添加了以下内容:

install: 
- pip install -U tox-travis
- pip install coverage
- pip install codecov

script:
- python setup.py install
- tox
- coverage run tests/test_foo.py

在我的tox.ini文件:

[testenv]
passenv = CI TRAVIS TRAVIS_*
setenv =
PYTHONPATH = {toxinidir}
PIPENV_IGNORE_VIRTUALENVS=1
deps =
pipenv
codecov
pytest
{py27}: pathlib2
commands_pre =
pipenv install --dev --skip-lock
codecov

我创建了一个最小的 tests/test_foo.py包含以下内容的文件(foo() 是当前包中唯一的函数)。

import pytest
import doctest
import neurokit2 as nk

if __name__ == '__main__':
doctest.testmod()
pytest.main()

def test_foo():
assert nk.foo() == 4

我有 似乎travis触发的codecov没有通过测试。此外,在特拉维斯上,它说 Error: No coverage report found 😕 我想知道我做错了什么?

最佳答案

1) 在您的项目目录中创建 pytest.ini 文件并添加以下行

[pytest]
testpaths = tests
python_files = *.py
python_functions = test_*

2) 在项目目录中创建.coveragerc 文件并添加以下行

[report]
fail_under = 90
show_missing = True

3) 代码覆盖率测试

pytest --verbose --color=yes --cov=Name of directory for which you need code coverage --assert=plain

注意:需要代码覆盖的目录名称必须在项目目录内

关于python - pytest 和 codecov : no coverage report found,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58635279/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com