Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Junit 多模块项目覆盖报告_Junit_Code Coverage_Cobertura_Jacoco_Sonar Runner - Fatal编程技术网

Junit 多模块项目覆盖报告

Junit 多模块项目覆盖报告,junit,code-coverage,cobertura,jacoco,sonar-runner,Junit,Code Coverage,Cobertura,Jacoco,Sonar Runner,我在生成代码覆盖率报告和分析覆盖项目代码的单元测试方面遇到了问题。我已经使用声纳获取了项目报告,但单元测试覆盖部分没有显示任何内容。我做了一些研究,发现sonar需要一份由emma/clover/corbetura/jacoco生成的junit报告。该项目不是基于maven的。请告诉我如何分析基于非maven的多模块项目的代码覆盖率。我用的是声纳跑步器 任何链接或参考都会有所帮助。 请不要提供文档页面的链接。很显然,我已经浏览了所有这些。 提前感谢。我提供了文档页面的链接,以帮助尚未看到文档或示

我在生成代码覆盖率报告和分析覆盖项目代码的单元测试方面遇到了问题。我已经使用声纳获取了项目报告,但单元测试覆盖部分没有显示任何内容。我做了一些研究,发现sonar需要一份由emma/clover/corbetura/jacoco生成的junit报告。该项目不是基于maven的。请告诉我如何分析基于非maven的多模块项目的代码覆盖率。我用的是声纳跑步器

任何链接或参考都会有所帮助。 请不要提供文档页面的链接。很显然,我已经浏览了所有这些。
提前感谢。

我提供了文档页面的链接,以帮助尚未看到文档或示例的其他人。获取maven属性设置并将其转换为sonar-runner.properties。例如,根据您设置多模块项目的方式,您可以将此设置放在父级或每个模块内:
sonar.jacoco.reportPath=reports/coverage/jacoco.exec

以下是多模块sonar runner项目的链接:

要配置单元测试代码覆盖率,请将maven中的相同属性应用于sonar-project.properties文件。下面是代码覆盖率示例中的示例:

注意:您需要设置单位和覆盖率属性以及源编码属性


    sonar.projectKey=org.codehaus.sonar:example-ut-sonarRunner-jacoco-reuseReports
    sonar.projectName=UT coverage with SonarQube Runner reusing JUnit and JaCoCo reports
    sonar.projectVersion=1.0

    sonar.sources=src
    sonar.binaries=classes
    sonar.language=java

    # Tells SonarQube to reuse existing reports for unit tests execution and coverage reports
    sonar.dynamicAnalysis=reuseReports

    # Tells SonarQube where the unit tests execution reports are
    sonar.junit.reportsPath=reports/junit

    # Tells SonarQube that the code coverage tool by unit tests is JaCoCo
    sonar.java.coveragePlugin=jacoco

    # Tells SonarQube where the unit tests code coverage report is
    sonar.jacoco.reportPath=reports/coverage/jacoco.exec

    # Encoding of the source files
    sonar.sourceEncoding=UTF-8

对于多模块项目,我有以下设置:
sonar.sources=src1,src2,src3 sonar.binaries=classes1,classes2,classes3 sonar.binaries=classes1,classes2,classes3
对我来说,它只显示src1的测试结果和覆盖范围。指定
sonar.dynamicAnalysis=reusereport
没有帮助。