我正在通过sonar runner运行一组相当简单的python项目,并且在显示测试时遇到问题。
我运行的是Sonar3.2.1和PythonPlugin1.1。覆盖率报告是以前生成的。
我有以下几套:
sonar.dynamicAnalysis=reuseReports
sonar.core.codeCoveragePlugin=cobertura
sonar.python.coverage.reportPath=coverage.xml
不管我现在做什么,报道都不会出现。
我的测试与我的源文件在同一文件夹中。。。这可能是问题所在吗?有没有要求源代码是如何布局的,以便覆盖报告能够被声纳正确地分析?
编辑:添加更多注释。。。
coverage小部件显示,但显示:
Code coverage
-
Unit test success
0 tests
我在运行sonar runner时也看到:
10:04:29.641 INFO p.PhasesTimeProfiler - Sensor PythonCoverageSensor...
10:04:29.642 INFO .p.c.CoberturaParser - Parsing report '/home/jenkins/jobs/myproject/workspace/trunk/src/python/coverage.xml'
10:04:29.883 INFO p.PhasesTimeProfiler - Sensor PythonCoverageSensor done: 242 ms
“sonar.python.coverage.reportPath”必须指向覆盖文件相对于“sonar project.properties”文件的路径。通常,这些临时文件是在temp文件夹中生成的,比如“target”或“bin”。所以您的配置应该更像:
也有这个问题,pytest没有生成一个格式正确的覆盖报告sonarqube可以利用什么。在pytest生成覆盖率报告之后,我运行了
coverage xml -i
,这个命令生成了一个格式正确的覆盖率报告,sonarqube可以理解这个报告。相关问题 更多 >
编程相关推荐