Sonar Report + 多模块 maven + Jacoco 插件
Sonar Report + Multi module maven + Jacoco 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 库的一部分)
根据项目要求,我们有这些结构。
- 模块 A - 适用于外部用户。
- 模块 B - 适用于内部用户。
模块 C -common b/w 两个模块。
我正在尝试为两个模块创建单个声纳报告,但我无法集成所有模块 junit 报告(模块 A 和模块 B 报告)
进入单个 report.I 遵循几个示例来组合多模块 Maven 项目,但没有任何效果。
similar issue1 similar issue2
github-example(声纳中给出的参考)
我能够使用带有 Jococo 插件的声纳实现集成测试覆盖。
对于 运行 本地的声纳,我遇到了声纳中 SCM 错误的问题。
每次在创建声纳报告时都失败了。
要解决本地问题,您需要禁用声纳中的 SCM 配置。
以管理员身份登录本地声纳 - admin/admin(默认 username/password)
现在在设置下我们有 SCM 选项卡 - 禁用 SCM Senor 并保存 SCM 设置。
现在在仪表板中 --> 配置小部件。搜索 "Integration Tests Coverage"
现在将小部件添加到您的项目仪表板中。
在 pom.xml 中遵循与 link 中相同的配置。
我遇到了 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 报告都将按模块使用,但它将列在带有模块的单个项目中。这样您就可以查看每个模块和整个单个项目的报告。
最好在添加每个模块后检查结果。如果失败,只需检查控制台中的错误并修复问题。
我是 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 库的一部分) 根据项目要求,我们有这些结构。
- 模块 A - 适用于外部用户。
- 模块 B - 适用于内部用户。
模块 C -common b/w 两个模块。
我正在尝试为两个模块创建单个声纳报告,但我无法集成所有模块 junit 报告(模块 A 和模块 B 报告) 进入单个 report.I 遵循几个示例来组合多模块 Maven 项目,但没有任何效果。
similar issue1 similar issue2
github-example(声纳中给出的参考)
我能够使用带有 Jococo 插件的声纳实现集成测试覆盖。 对于 运行 本地的声纳,我遇到了声纳中 SCM 错误的问题。 每次在创建声纳报告时都失败了。 要解决本地问题,您需要禁用声纳中的 SCM 配置。 以管理员身份登录本地声纳 - admin/admin(默认 username/password) 现在在设置下我们有 SCM 选项卡 - 禁用 SCM Senor 并保存 SCM 设置。
现在在仪表板中 --> 配置小部件。搜索 "Integration Tests Coverage"
现在将小部件添加到您的项目仪表板中。
在 pom.xml 中遵循与 link 中相同的配置。
我遇到了 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 报告都将按模块使用,但它将列在带有模块的单个项目中。这样您就可以查看每个模块和整个单个项目的报告。
最好在添加每个模块后检查结果。如果失败,只需检查控制台中的错误并修复问题。