【发布时间】:2021-11-15 04:04:28
【问题描述】:
我有一个 Django 项目,我想用 Coverage.py 对其进行测试。我想排除.virtualenvs 中的文件。
我正在使用 pipenv,编辑器是 VS Code。覆盖版本为 5.5
我按照文档说明在项目的根目录中创建了一个.coveragec 文件。然后我运行了测试,但 Coverage 并没有省略 .virtualenvs 中的包。
.coveragec
[run]
source = .
omit = *.virtualenvs/*,*tests*,*apps.py*,*manage.py*,*__init__.py*,*migrations*,*asgi*,*wsgi*,*admin.py*,*urls.py*
[report]
omit = *.virtualenvs/*,*tests*,*apps.py*,*manage.py*,*__init__.py*,*migrations*,*asgi*,*wsgi*,*admin.py*,*urls.py*
当这种方法不起作用时,我就求助于使用命令行方法。这也不起作用。
cmd 命令
coverage run --omit=*./virtualenvs/*,*tests*,*apps.py*,*manage.py*,*__init__.py*,*migrations*,*asgi*,*wsgi*,*admin.py*,*urls.py* manage.py test -v 2
coverage html --omit=*./virtualenvs/*,*tests*,*apps.py*,*manage.py*,*__init__.py*,*migrations*,*asgi*,*wsgi*,*admin.py*,*urls.py*
我也使用了.venv 而不是.virtualenvs,但它仍然不起作用。
我能做什么?
【问题讨论】:
-
你能分享你的项目目录结构吗?您可以从 IDE 中截取目录外观的屏幕截图
-
coveragec应该是coveragerc -
感谢@BrianD,解决了它。
标签: python django unit-testing testing virtualenv