python – 使用Py.Test测量单元测试特定文件的覆盖范围

我正试图用Py.Test检索我的单元测试的覆盖范围.问题是我得到了关于其他我不关心的
python文件的覆盖信息.

这是我的文件结构的一个例子.在这种情况下,我想测试:car.py,wheel.py和steer.py

python2.7 / site-packages中/

> car.py
> wheel.py
> steer.py
> coverage.py(来自pypi.python.org)
> yaml(python yaml库,来自pypi.python.org)
> pytest-2.5.2-py2.7.egg(python py.test库)
>还有更多

python2.7 /站点包/测试/

> test_car.py
> conftest.py

现在我使用Py.Test来执行测试:

python -m pytest --cov python2.7/site-packages/ python2.7/site-packages/test/test_car.py

但这导致了网站包中所有python文件的覆盖范围(有点明显).

python -m pytest --cov python2.7/site-packages/car.py python2.7/site-packages/test/test_car.py

这只会导致car.py的覆盖范围,而不是我想要的所有文件.

我怎样才能使用Py.Test来测量特定文件的覆盖范围?

(我也尝试过:

python -m pytest --cov python2.7/site-packages/car.py,python2.7/site-packages/wheel.py python2.7/site-packages/test/test_car.py

但是Py.Test不知道如何解析和使用这个参数.
)

最佳答案 我找到了解决方案.您可以提供多个–cov文件参数.

python -m pytest \
  --cov python2.7/site-packages/car.py \
  --cov python2.7/site-packages/wheel.py \
  --cov python2.7/site-packages/steer.py \
  python2.7/site-packages/test/test_car.py
点赞