美文网首页
Powermock遇上了Jacoco,0%的coverage

Powermock遇上了Jacoco,0%的coverage

作者: jaymz明 | 来源:发表于2020-07-12 19:14 被阅读0次

    最近收到了同事们关于sonar coverage的complain,会有这样的现象,在本地idea或者jenkins扫描出来的coverage远远比sonar上显示的多。事关代码质量的问题还是比较严肃的,所以比较了下代码,发现同样的UT,用powerMock写的report里并不包含它们,但是在本地扫描的时候还是会出现。
    看了下官网描述,说插件不兼容,要用jacoco的离线模式。

    JaCoCo Offline Instrumentation works only with PowerMock version 1.6.6 and above.
    https://github.com/powermock/powermock/wiki/Code-coverage-with-JaCoCo

    那么参考了下网上pom的描述,修改原先扫描的jacoco插件配置:

    <plugin>
                    <groupId>org.jacoco</groupId>
                    <artifactId>jacoco-maven-plugin</artifactId>
                    <version>${jacoco.version}</version>
                    <executions>
                        <execution>
                            <id>default-instrument</id>
                            <goals>
                                <goal>instrument</goal>
                            </goals>
                        </execution>
                        <execution>
                            <id>default-restore-instrumented-classes</id>
                            <goals>
                                <goal>restore-instrumented-classes</goal>
                            </goals>
                        </execution>
                        <execution>
                            <id>report</id>
                            <phase>prepare-package</phase>
                            <goals>
                                <goal>report</goal>
                            </goals>
                            <configuration>
                                <dataFile>${project.build.directory}/coverage.exec</dataFile>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>
    
    

    当然我们在实际使用过程中还遇到了report能出来,但是validate过不了,后来想到的方法是把这部分配置写在profile里,这样在编译的时候不指定profile运行,而只让他在扫描分析的时候进行工作。

    相关文章

      网友评论

          本文标题:Powermock遇上了Jacoco,0%的coverage

          本文链接:https://www.haomeiwen.com/subject/valjcktx.html