AFAIK“测试覆盖率”功能仅在专业版(code-coverage)中可用。
如何查看PyCharm社区版本的测试代码覆盖率?
答案 0 :(得分:4)
您已经发现,测试覆盖率功能仅在专业PyCharm版本中可用。
可以做的是使用外部python程序包来执行测试套件的覆盖范围。该程序包名为coverage。
您可以使用以下命令轻松安装它:
pip install coverage
然后,您可以通过PyCharm终端直接使用它(确保解释器是正确的)。
下面是一个简单的示例:
假设您具有这样的项目结构
- project_name
- src
- some_code.py
- unittests
- test_1.py
- test_2.py
要运行所有unittests文件夹,您必须在PyCharm终端中键入以下命令:
coverage run --source=./unittests -m unittest discover -s unittests/ && coverage report
请注意,在此示例中,我是从project_name目录启动命令。
通过这种方式,将运行单元测试并显示覆盖率。
另一个有趣的选择是创建HTML报告。如果您有兴趣,请使用以下命令
coverage run --source=./unittests -m unittest discover -s unittests/ && coverage html
通过这种方式,将添加一个新文件夹,其中包含html报告的所有源。
coverage包有很多选项,并且可以用不同的方式自定义它,因此请检查documentation
答案 1 :(得分:3)
答案 2 :(得分:0)
首先,您需要安装Coverage
pip install coverage
然后运行给定命令(Django应用程序)
coverage run --source='.' manage.py test --keepdb
coverage report --skip-covered -m