У меня есть небольшой Python 3 проект, который я собираюсь сохранить в качестве библиотеки многократного использования. Давайте назовем это utils_common. Отчет о покрытии из cover.py включает некоторое покрытие для фактического кода модульных тестов вместе с «производственным» кодом, и я думаю, что я здесь что-то не так делаю.
Структура каталога:
utils_common_prj (root project directory)
utils_common (directory, actual code package)
__init__.py (empty file)
data_convert.py (some module with a class with static methods)
... (other modules with code)
tests (directory, test code package)
__init__.py. (empty file)
test_data_convert.py (unit test class, testing class DataConvert)
... (other unit tests)
setup.py (file, used to create the .tar.gz dist package)
.pylintrc
.gitignore
Поэтому я запускаю модульные тесты с покрытием кода, используя cover.py следующим образом: имея текущий каталог utils_common_prj, я запускаю:
coverage run --source=. --omit=setup.py -m unittest discover
Затем следует
coverage report
Что я получаю:
Name Stmts Miss Cover
-------------------------------------------------------------
utils_common/__init__.py 0 0 100%
utils_common/data_convert.py 10 0 100%
...
tests/__init__.py 0 0 100%
tests/test_data_convert.py 39 0 100%
...
-------------------------------------------------------------
TOTAL 222 0 100%
Я получаю счет оператора и процент от тестового кода вместе с реальным кодом, и я не думаю, что это желательно.
Исходя из. NET и Java фона, это похоже на ошибку. Это ошибка? Если да, то как мне это исправить?