在Python中使用pytest coverage和codecov.io

时间:2019-10-23 16:38:22

标签: python coverage.py codecov

当我运行pytest --cov时,覆盖率约为60%。将代码推送到github后,在codecov.io上生成的报告显示100%。我不明白两者有何不同,我以为正在运行同一命令。

Codecov.io显示

Files       •   •   •   Coverage
 __init__.py    2   2   0   0   100.00%
 c_wrapper.py   5   5   0   0   100.00%
 fibonacci.py   13  13  0   0   100.00%
 tests/test_fibonnaci.py    39  39  0   0   100.00%
Folder Totals (4 files) 59  59  0   0   100.00%
Project Totals (4 files)    59  59  0   0   100.00%

但正在运行

pytest --cov=fibonacci fibonacci/tests

显示

----------- coverage: platform linux, python 3.7.4-final-0 -----------
Name                                Stmts   Miss Branch BrPart  Cover
---------------------------------------------------------------------
fibonacci/__init__.py                   2      2      0      0     0%
fibonacci/c_wrapper.py                  5      5      0      0     0%
fibonacci/fibonacci.py                 13     13      6      0     0%
fibonacci/tests/test_fibonnaci.py      39      0      0      0   100%
---------------------------------------------------------------------
TOTAL                                  59     20      6      0    60%

差异从何而来,正确吗?

1 个答案:

答案 0 :(得分:0)

运行之间似乎有(出于我不明白的原因,但我想)之间的差异

pytest --cov=fibonacci fibonacci/tests

python -m pytest --cov=fibonacci fibonacci/tests

稍后再做将显示完整的报道