Как обновить покрытие (включенное в pybuilder) до модуля igrore run.py?

Проблема: приложение Flask, создаваемое с помощью Pybuilder, нуждается в Coverage, чтобы исключить run.py во время сборки, чтобы избавиться от предупреждающего сообщения и повлиять на процент покрытия

[WARN]  Module 'run' was not imported by the covered tests

а также

[WARN]  Test coverage below 70% for run:  0%

в

(env3)$ python3 build.py
PyBuilder version 0.11.9
Build started at 2017-01-23 12:48:03
------------------------------------------------------------
[INFO]  Building myproject version 0.0.1.00526
[INFO]  Executing build in /Users/zzzz/Documents/Projects/myproject
[INFO]  Going to execute tasks: clean, install_dependencies, analyze, publish
[INFO]  Removing target directory /Users/zzzz/Documents/Projects/myproject/target
[INFO]  Installing all dependencies
[INFO]  Running unit tests
[INFO]  Executing unit tests from Python modules in /Users/zzzz/Documents/Projects/myproject/src/unittest/python
[INFO]  Executed 14 unit tests
[INFO]  All unit tests passed.
[INFO]  Executing flake8 on project sources.
[INFO]  Collecting coverage information
[WARN]  coverage_branch_threshold_warn is 0 and branch coverage will not be checked
[WARN]  coverage_branch_partial_threshold_warn is 0 and partial branch coverage will not be checked
[INFO]  Running unit tests
[INFO]  Executing unit tests from Python modules in /Users/zzzz/Documents/Projects/myproject/src/unittest/python
[INFO]  Executed 14 unit tests
[INFO]  All unit tests passed.
[WARN]  Module 'run' was not imported by the covered tests
------------------------------------------------------------
BUILD FAILED - Build aborted
------------------------------------------------------------
Build finished at 2017-01-23 12:48:16
Build took 12 seconds (12694 ms)
[WARN]  Test coverage below 70% for run:  0%
[WARN]  Test coverage below 70% for run:  0%
[WARN]  Test coverage below 70% for app.mod_upload: 21%
[WARN]  Test coverage below 70% for app.mod_upload: 21%
[INFO]  Overall coverage is 79%
[INFO]  Overall coverage branch coverage is 66%
[INFO]  Overall coverage partial branch coverage is 77%
[INFO]  Overall coverage is 79%
[INFO]  Overall coverage branch coverage is 66%
[INFO]  Overall coverage partial branch coverage is 77%
(env3)$ 

Вопрос: Я мог бы использовать здесь ответ, но охват выполнялся pybuild, а не сам из командной строки, поэтому решение --omit не совсем применимо, что создает проблему. Может кто-нибудь, пожалуйста, посоветовать?

1 ответ

Решение

Нашел ответ! Решение: в build.py (часть проекта pybuilder) добавьте:

@init
def set_properties(project):
    project.set_property("coverage_exceptions", ['run',])

список может быть расширен с другими модулями по мере необходимости.

Другие вопросы по тегам