PyCharmでファイル全体の検査を無効にすることは可能ですか?
これが必要な理由は、 py.test を処理するときです。関数パラメーターをシャドウするように見えるフィクスチャを使用し、同時に未解決の参照を引き起こします。例えば。:
_from myfixtures import user # Unused import statement warning
def test_is_awesome(user): # Shadows name 'user' from outer scope warning
assert user.is_awesome()
_
pytest.raises()
を使用すると、pytest.pyに「参照 'raises'が見つかりません」という警告が表示されるなど、py.testからの他の警告もあります。
たぶん、これらの問題を解決する別の方法がありますか? py.testを間違って使用しているのでしょうか?
PyCharmでファイル全体の検査を無効にすることは可能ですか?
はい。この回答はこの質問のみを対象としています(「これらの問題を修正する別の方法があるのではないでしょうか?py.testを誤って使用しているのでしょうか?」)。
あるいは(動作するかどうか:実際の検査に依存します..そしてそれが実際にPyCharmでこのように動作するかどうかはわかりません-ではありません残念ながら、PyCharmユーザー自身)
これは、PhpStormでの外観です(スクリーンショットには、「ファイル全体の抑制」ではなく、「ステートメントの抑制」オプションが表示されています)。
「py.testを間違って使用しているのではないでしょうか?」と答えるには質問:
フィクスチャのインポートは、従うのに最適なパターンではありません。代わりに、フィクスチャを必要とするパッケージのconftest.pyファイルにフィクスチャを配置することをお勧めします。フィクスチャが2つのパッケージで使用されている場合は、親ディレクトリにconftest.pyを配置し、そこにフィクスチャを配置します。これにより、未使用のインポートとシャドウイングの警告が削除されます。
pytest.raises
名前空間の問題については、現時点ではこれに対する解決策はないと思います。これはpylintも苦しんでいます(そして、これらの問題に対処するためにpylintへのpy.testプラグインを作成する努力があると思います)。したがって、結局のところ、リンターはpy.testについて少し知る必要があると思います。