web-dev-qa-db-ja.com

py.test:エラー:認識されない引数:--cov = ner_brands --cov-report = term-missing --cov-config

コマンドラインからテストを実行しようとしているとき

py.test  file_name.py

私はこのエラーを受け取りました:

py.test: error: unrecognized arguments: --cov=ner_brands --cov-report=term-missing --cov-config

どうすれば修正できますか?

42
Hello lad

--coy引数をpytestに渡したい場合は、 pytest-cov package が必要です。デフォルトでは、渡す必要はありません。 py.testの修正版を使用していますか?

pip install pytest-cov

あなたの問題を修正します。

69
sdonk

CentOS 6を使用している場合は、setuptoolsのバージョンが古いため、アップグレードする必要があります。

pip install pytest-cov
pip install --upgrade setuptools

インストール直後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
3
Samuel Phan

sdonkの答えは私を助けてくれました。しかし、私はpipenvを使用しているので、実行する必要がありました

pipenv install pytest_cov
1
Brontes

ここの他の回答がうまくいかなかった場合、py.testがシステムのどこかにインストールされている可能性があります。私の場合、仮想環境内でここで説明した問題に遭遇しましたが、pytestがシステムインストール(pytest-covがインストールされていない)にデフォルト設定されていたことがわかりました。

仮想環境を非アクティブ化するか、新しいシェルを起動し、次を実行して確認します。

pip3 freeze | grep pytest

(またはpip freeze | grep pytest python2を実行している場合)

見つかった場合は、アンインストールしてから、仮想環境を再アクティブ化してから再試行してください。

1