Предупреждение: Не удалось создать отчет: Нет данных для отчета

#pytest #coverage.py

Вопрос:

Я пытаюсь получить отчет о покрытии своего кода, выполнив следующую команду:

 python3 -m pytest --cov-config=.coveragerc --cov=main/lambda_function tests

 

Я запускаю команду в терминале pycharm в репо, и мой основной код находится в разделе main/lambda_function.

У меня был правильно настроен .coveragerc, но как только я переместил файл lambda_function в раздел main, мой отчет о покрытии перестал работать:

 [run]
source =
    lambda_function
    rds_config
[paths]
source =
    src/lambda_function
[report]
show_missing = true
precision = 2
 

Я попытался добавить main/, но я получаю ошибку:

 Coverage.py warning: Module main/lambda_function was never imported. (module-not-imported)
Coverage.py warning: No data was collected. (no-data-collected)
WARNING: Failed to generate report: No data to report.
 

Чего мне не хватает?

Ответ №1:

Значение —cov должно быть путем, как задокументировано:

--cov=PATH

Измерьте охват пути файловой системы. (допускается несколько вариантов)

Попробуйте изменить путь покрытия на основной каталог, содержащий

 python3 -m pytest --cov-config=.coveragerc --cov=main tests
 

Или попробуйте использовать обозначение имени модуля python с использованием точки . и без расширения файла main.lambda_function

 python3 -m pytest --cov-config=.coveragerc --cov=main.lambda_function tests
 

Комментарии:

1. Значит, он работает и сейчас? Проверьте свои тесты. Вероятно, это не вызывает ваш код. Может быть, вы насмехались надо всем?