Jenkins 跨构建管道的多个阶段聚合代码覆盖率结果

Jenkins 跨构建管道的多个阶段聚合代码覆盖率结果,jenkins,sonarqube,build-pipeline,Jenkins,Sonarqube,Build Pipeline,假设我在Jenkins中将一个非常简单的构建管道构建为两个作业: 编译和单元测试 集成测试 理想情况下,我希望将这两组测试中的代码覆盖到SonarQube中。这可能吗?似乎SonarQube假设每个更新都是作为单个事务针对整个项目的 起初,我很高兴看到增加了增量分析,但这似乎是针对一个不同的用例:只对更改的文件进行预提交检查 如果在SonarQube中无法做到这一点,那么我只能在SonarQube中提供至少来自单元测试的代码覆盖率,或者将SonarQube项目的更新延迟到步骤2之后,但是我们的集

假设我在Jenkins中将一个非常简单的构建管道构建为两个作业:

编译和单元测试 集成测试 理想情况下,我希望将这两组测试中的代码覆盖到SonarQube中。这可能吗?似乎SonarQube假设每个更新都是作为单个事务针对整个项目的

起初,我很高兴看到增加了增量分析,但这似乎是针对一个不同的用例:只对更改的文件进行预提交检查

如果在SonarQube中无法做到这一点,那么我只能在SonarQube中提供至少来自单元测试的代码覆盖率,或者将SonarQube项目的更新延迟到步骤2之后,但是我们的集成测试需要很长时间,这意味着SonarQube中的结果将被延迟


人们在现实世界中是如何处理这一问题的?

不幸的是,SonarQube分析必须一次完成,因此您需要等待集成测试完成,并利用reuseReport模式来使用早期单元测试运行的结果

报告Java的重用信息:


对于.net:

只想说您的.net链接已失效。。。如果我找到一个新的,我会把它添加到这里是的,自从2014年发布这个答案以来,SonarQube的.NET生态系统已经完全重做了。这可能是一个很好的起点: