声纳报告+多模块maven + Jacoco插件

时间:2015-09-28 10:12:41

标签: sonarqube maven-plugin sonarqube5.1 jacoco-maven-plugin maven-cobertura-plugin

我是Sonar的新手。 我有多模块maven项目。 请找到下面的项目结构

-Parent
| -Module A
    |
     -pom.xml (Module A) 
| -Module B
    |
     -pom.xml (Module B)
| -Module C
|   |
|    -pom.xml (Module C)
|
--pom.xml (parent pom)   

注意 :(模块C是模块A /模块B中的共享模块 - 意味着内部模块C将进入模块A,模块B库的一部分)  根据项目要求,我们有这些结构。

  1. 模块A - 适用于外部用户。
  2. 模块B - 适用于内部用户。
  3. 模块C -common b / w两个模块。

    我正在尝试为模块创建单个声纳报告,但我无法集成所有模块junit报告(模块A和模块B报告) 单个报告。我按照几个例子来组合多模块maven项目,但没有任何作用。

  4. similar issue1 similar issue2
    github-example(在声纳中给出参考)

2 个答案:

答案 0 :(得分:0)

我有超过40个甚至嵌套的模块的类似问题。你要做的是在父pom中创建整个声纳配置。

<sonar.host.url>set url here (default is localhost)</sonar.host.url>
<sonar.login>user for host url (default admin)</sonar.login>
<sonar.password>password for host url (default is admin)</sonar.password>
<sonar.projectName>optional name for whole project in sonar view</sonar.projectName>
<sonar.projectDescription>optional project description for sonar view</sonar.projectDescription>
<sonar.projectBaseDir>like name says you can set project base dir, if you have parent pom as a separate module then you can type ".." to set main directory with all modules</sonar.projectBaseDir>

正确设置将为整个项目单独分析的所有模块:

<sonar.modules>module1, module2, module3</sonar.modules>

正确配置每一个:

<module1.sonar.projectName>module1</module1.sonar.projectName>
<module1.sonar.projectBaseDir>module1/</module1.sonar.projectBaseDir>
<module1.sonar.sources>optionally set sources to proper directory for example src/main/java</module1.sonar.sources>

<!-- similiar for other 2 projects -->

这样,每个模块将使用所有junit报告,但它将在带有模块的单个项目中列出。这样,您就可以查看每个模块和每个项目的报告。

添加每个模块后检查结果是一个好习惯。如果发生故障,只需在控制台中检查错误并解决问题。

答案 1 :(得分:-1)

我可以使用带有Jococo插件的声纳实现集成测试覆盖。 为了在本地运行声纳,我遇到了声纳中SCM错误的问题。 每次在声纳报告创建中都失败了。 要解决本地问题,您需要在声纳中禁用SCM配置。 以管理员身份登录本地声纳 - admin / admin(默认用户名/密码) 现在在设置下我们有SCM选项卡 - 禁用SCM Senor并保存SCM设置。

sonar setting window

现在在仪表板中 - &gt;配置小部件。搜索“集成测试覆盖率”

enter image description here

现在将小部件添加到您的项目信息中心。

enter image description here

遵循链接中给出的pom.xml中的相同配置。

https://github.com/SonarSource/sonar-examples/tree/master/projects/languages/java/code-coverage/combined%20ut-it/combined-ut-it-multimodule-maven-jacoco