.coveragerc file location when running py.test
Reading the pytest documentation again and again...I found my "mistake":
Here it says:
Note that this plugin controls some options and setting the option in the config file will have no effect. These include specifying source to be measured (source option) and all data file handling (data_file and parallel options).
So my test was useless because the data_file option in .coveragerc has no effect.
I tested with the omit option and it worked!
.coveragerc
has to be placed in the basepath as described above (and expected)
Christian Scholz
Software Developer and CEO. Python, Django, Elasticsearch Professional in Germany Blogs: einfachpython.de einfachtesla.de pypromed.de
Updated on July 20, 2022Comments
-
Christian Scholz almost 2 years
I am trying to get a pytest run to work with a coveragerc file. Settings in my .coveragerc file are not used, so I guess the file is not used at all.
See my project structure and pytest calls below! What am I doing wrong?
Project:
basepath/lib/ basepath/.coveragerc basepath/test/test_lib basepath/test/run.py
I call test/run.py from virtualenv
basepath$ python test/run.py
run.py
import pytest pytest.main('test/test_lib -v --cov-report xml --cov lib --cov-config .coveragerc')
I tried to move .coveragerc in different directories i.e. lib/, test/, test/test_lib/ but none of them worked.
I expected to get a coverage file named "xxxcoverage" as set in .coveragerc but I always got the default one .coverage
.coveragerc
[run] data_file = xxxcoverage