Сравнение тестового покрытия python с предыдущим запуском

Я использую extension.py для проверки покрытия кода моих модульных тестов в виде отчета в формате html.

coverage run -m pytest
coverage html

Отчет довольно крутой, он показывает общий% покрытия и% покрытия отдельного файла .py. Каждый раз, когда я завершал некоторые изменения кода, я повторно запускал отчет о покрытии, чтобы проверить, могут ли мои тестовые сценарии модульного тестирования хорошо покрыть новые коды. Однако проблема в том, что мне приходится вручную определять, имеет ли какой-либо файл .py особенно низкий охват.

Есть ли способ или существующий инструмент, который я могу использовать для сравнения тестового покрытия с предыдущим / историческим запуском? Так что я могу легко определить, сильно ли снизился охват какого-либо файла .py.


person henrywongkk    schedule 24.09.2019    source источник
comment
Проверьте мое решение аналогичного вопроса.   -  person betontalpfa    schedule 13.11.2019


Ответы (1)


В настоящее время эта функция не поддерживается в cover.py, но может быть построена за пределами покрытия.

codecov.io

Такие службы, как codecov.io, предоставляют эту функцию.

diff-cover

Такие проекты, как diff-cover, выделяют строки в вашем последнем изменении, которым не хватает покрытия.

Инструмент командной строки diff-cover сравнивает отчет о покрытии XML с выводом git diff. Затем он сообщает информацию о покрытии для строк в diff.

person henrywongkk    schedule 27.09.2019