Ответ 1
Для этого есть запрос функции https://youtrack.jetbrains.com/issue/PY-16945
У меня есть файл .coveragerc
в корне моего проекта. Он сообщает, что cover.py опускает мои каталоги миграции проектов:
[run]
omit = *migrations*
Когда я запускаю coverage.py
в командной строке, конфиг, который я вставляю в .coveragerc, выполняется.
Однако PyCharm не распознает его. Есть ли параметр, который мне не хватает?
Если выяснится, что PyCharm не может распознать .coveragerc
, я был бы доволен даже просто способом пропустить эти каталоги.
Для этого есть запрос функции https://youtrack.jetbrains.com/issue/PY-16945
Я оказался в ситуации, когда мне это было очень плохо. Мой трафик запускался правильно, а также комбинезоны, но я не смог заставить все работать в PyCharm.
Вещь немного взломана, но, надеюсь, это поможет людям:
В моем корневом каталоге проекта я получил .coveragerc
[run]
omit = ./venv
concurrency = multiprocessing
parallel = True
source = HookTest
data_file = .cache/.coverage
И я "взломал" немного run_coverage.py PyCharm: (pycharm-2016.3.2/helpers/coverage_runner/run_coverage.py)
Начиная с
argv = []
Замените все:
argv = []
for arg in sys.argv:
if arg.startswith('-m') and arg[2:]:
argv.append(arg[2:])
else:
argv.append(arg)
cwd = os.getcwd()
rcfile = cwd + "/.coveragerc"
if os.path.exists(rcfile):
print("Loading rcfile")
i = argv.index("run")+1
argv = argv[:i] + ["--rcfile={}".format(rcfile)] + argv[i:]
sys.argv = argv
try:
main()
finally:
if run_cov:
os.chdir(cwd)
if os.getenv('COVERAGE_COMBINE'):
main(["combine"])
main(["xml", "-o", coverage_file + ".xml", "--ignore-errors"])
Чтобы выполнить этот запуск с помощью теста python setup.py, я создал script в PyCharm, который использует указанную setup.py, если у параметра есть параметр, а COVERAGE_COMBINE - как глобальный env. Это может быть не лучшее из всех решений времени, но по крайней мере это позволяет мне больше не использовать вывод HTML при работе локально:)
Существует другой способ заставить PyCharm игнорировать определенные файлы и папки:
В Settings
выберите Project: ...
- Project Structure
. Здесь вы можете пометить папки как Excluded
или специально исключить файлы.
В отчетах о покрытии кода PyCharm игнорируются все эти файлы с исключениями.