Покрытие тестов Django - не покрывает содержимое функции, только определение
Прежде чем вы это скажете, да, я видел это сообщение, и да, у меня та же проблема, но с тестированием Django, которое теоретически использует модуль unittest, но это не сработало для меня, кто-нибудь знает, как заставить его покрывать всю функцию с django?
Это мой тестовый класс
class UpdateEventsForAsset:
@staticmethod
def update_and_process_event(event: Event, data: dict):
# 6 lines (10-16)
def update_events(self, data: dict):
# 9 lines (19-28)
и мои охватывающие броски
Name Stmts Miss Cover Missing
--------------------------------------------------------------------------------
functions/workflow/asset_update.py 27 17 37% 10-16, 19-28, 33-34
но мои тесты выполняют функцию update_events, которая вызывает функцию update_and_process_event, так что все должно быть покрыто
Я попробовал добавить
if __name__ == "__main__":
TestCase.run(MyTestCase)
но не сработало, все еще показывает, что я охватываю только определения функций.
Это мой файл .coveragerc
plugins =
django_coverage_plugin
[report]
exclude_lines =
# Have to re-enable the standard pragma
pragma: no cover
# Don't complain about missing debug-only code:
def __repr__
if self\.debug
# Don't complain if tests don't hit defensive assertion code:
raise AssertionError
raise NotImplementedError
# Don't complain if non-runnable code isn't run:
if 0:
if __name__ == .__main__.:
show_missing = True