我的项目文件夹(是的 - 我知道这是最佳实践)类似于:
.
├── app.py
├── otherscript.py
├── tests/
└── tools/
├── __init__.py
└── toolfile.py
我需要nose --with-coverage
测试.py
主文件夹、tools
文件夹中的脚本并排除tests
文件夹(尽管我并不真正关心排除它)
当我运行基本
nose --with-coverage
我覆盖了所有已安装的依赖项和库(烧瓶、请求等)
当我跑步时
nose --with-coverage --cover-package=folder name (or . or ./)
我得到了测试文件夹的覆盖率。该tools/__init__.py
文件,app.py
但不适用于其余脚本:
> (opentaba-server) D:\username\pathto\opentaba-server>nosetests --with-coverage -- cover-package=./ ... Name
> Stmts Miss Cover Missing
> ----------------------------------------------------------------------- Tests\functional_tests\test_return_json 26 0 100%
> Tests\unit_test\test_createdb 0 0 100%
> Tests\unit_test\test_scrape 0 0 100% app
> 63 15 76% 22, 24, 72-81, 8 8-106, 133 tools\__init__
> 0 0 100%
> ----------------------------------------------------------------------- TOTAL 89 15 83%
> ---------------------------------------------------------------------- Ran 3 tests in 5.182s OK
当我使用--cover-inclusive flag
. 它只是失败了:
nosetests-scripts.py: error: no such option: --with-coverage
我很乐意为此提供任何帮助