-1

我是声纳的新手。我有多模块 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 - 两个模块的通用黑白。

    我正在尝试为这两个模块创建单个声纳报告,但我无法将所有模块 junit 报告(模块 A 和模块 B 报告)集成到单个报告中。我遵循几个示例来组合多模块 maven 项目但没有任何效果。

类似问题1 类似问题2
github-example(声纳中给出的参考)

4

2 回答 2

0

我对甚至嵌套的 40 多个模块也有类似的问题。您要做的是在父 pom.xml 中创建整个声纳配置。

<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 报告,但它将与模块​​一起列在单个项目中。这样,您将能够查看每个模块和整个单个项目的报告。

添加每个模块后检查结果是一个很好的做法。如果失败,只需检查控制台中的错误并解决问题。

于 2016-12-02T11:47:14.187 回答
-1

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

声纳设置窗口

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

在此处输入图像描述

现在将小部件添加到您的项目仪表板中。

在此处输入图像描述

按照链接中给出的 pom.xml 中的相同配置进行操作。

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

于 2015-10-07T06:38:28.157 回答