PyCharm noinspection for whole file?

Is it possible to disable an inspection for the whole file in PyCharm?

Yes. This answer is for this question only (and not about "Maybe there's another way to fix these problems? Maybe I'm using py.test incorrectly?").

  1. "Settings | Scopes"
  2. Create new scope that would include such "unwanted" file(s)
  3. "Settings | Inspections"
  4. Find "problematic" inspection
  5. Right click and choose "Add scope"
  6. Disable that inspection for that specific scope

Alternatively (may work or may not: depends on actual inspection .. and I'm not sure if it actually works in PyCharm this way -- not a PyCharm user myself unfortunately)

  1. Alt + Enter while caret is standing on error/warning place in your code
  2. Select correct entry from appeared popup menu
  3. Using Arrow Right key expand submenu
  4. Look for "Suppress inspection" option

This is how it looks in PhpStorm (screenshot shows "suppress for statement" option and not "suppress for whole file"):

enter image description here

Related: https://stackoverflow.com/a/20803118/783119


To answer the "Maybe I'm using py.test incorrectly?" question:

Importing fixtures is not the best pattern to follow. Instead it is better to put fixtures in a conftest.py file of the package which needs them. If a fixture is used in two packages just put a conftest.py in their parent directory and put the fixture in there. This should get rid of the unused import and shadowing warnings.

As for the pytest.raises namespace issue, I don't think there's a solution to this currently. This is something that pylint suffers as well (and I think there's an effort to create a py.test plugin to pylint to address these things). So I think at the end of the day the linter will still need to know a little about py.test.