wenn ich versuche, meinen Test über die Befehlszeile auszuführen
py.test file_name.py
Ich habe diesen Fehler erhalten:
py.test: error: unrecognized arguments: --cov=ner_brands --cov-report=term-missing --cov-config
Wie kann ich das beheben?
pytest-cov package ist erforderlich, wenn Sie --cov-Argumente an pytest übergeben möchten, standardmäßig sollte es jedoch nicht übergeben werden. Verwenden Sie eine modifizierte Version von py.test?
pip install pytest-cov
würde dein Problem beheben.
Für diejenigen, die CentOS 6 verwenden, ist die Version von setuptools
alt und Sie müssen sie auch aktualisieren:
pip install pytest-cov
pip install --upgrade setuptools
Gleich nach der Installation von pip install pytest-cov
:
~ # py.test --version
This is pytest version 3.0.5, imported from /usr/lib/python2.6/site-packages/pytest.pyc
~ # pip install --upgrade setuptools
[...]
Successfully installed setuptools-30.3.0
~ # py.test --version
This is pytest version 3.0.5, imported from /usr/lib/python2.6/site-packages/pytest.pyc
setuptools registered plugins:
pytest-cov-2.4.0 at /usr/lib/python2.6/site-packages/pytest_cov/plugin.py
sdonks Antwort hat mir geholfen. Aber da ich pipenv benutze, musste ich laufen
pipenv install pytest_cov
Wenn die anderen Antworten für Sie nicht funktionierten, haben Sie py.test möglicherweise an einem anderen Ort in Ihrem System installiert. In meinem Fall bin ich auf das hier beschriebene Problem in einer virtuellen Umgebung gestoßen, aber es stellte sich heraus, dass pytest standardmäßig auf meiner Systeminstallation (auf der pytest-cov nicht installiert war) war.
Deaktivieren Sie Ihre virtuelle Umgebung oder starten Sie eine neue Shell und führen Sie zur Bestätigung Folgendes aus:
pip3 freeze | grep pytest
(oder pip freeze | grep pytest
, wenn Sie Python2 ausführen)
Wenn Sie es gefunden haben, deinstallieren Sie es, reaktivieren Sie Ihre virtuelle Umgebung und versuchen Sie es erneut.