Как измерить охват не тестового прогона python - PullRequest
1 голос
/ 04 ноября 2019

У меня есть специальный интеграционный тестовый пакет на python, который технически является всего лишь прогоном python my_script.py --config=config.json. Я хочу сравнить использование различных конфигов с точки зрения того, какая часть строк кода в моем проекте будет активирована.

Конкретное содержимое my_script.py не имеет значения - это точка запуска, которая анализирует конфигурацию, а затем импортируети вызывает функции, определенные в нескольких файлах, из папки ./src.

Я знаю инструменты для измерения покрытия в pytest, например cover.py;Однако есть ли способ измерить охват не тестового запуска Python?

1 Ответ

2 голосов
/ 06 ноября 2019

Coverage.py не волнует, запускаете ли вы тесты или нет. Вы можете использовать его для запуска любой программы на Python. Просто замените python на python -m coverage run

Так как ваша обычная командная строка:

python my_script.py --config=config.json

, попробуйте это:

python -m coverage run my_script.py --config=config.json

Затем сообщите данные с помощью coverage report -m или coverage html

...