天天看点

关于maven集成jacoco、sonar无法生成单元测试覆盖率问题和jacoco报告编码问题(Invalid UTF-8 start byte)

最近在给公司项目整合sonar,遇到的一连串问题特此记录。

单元测试执行时会打印一些中文日志,在启动时正常展示,但是在mvn test执行过程中和最终jacoco生成的测试报告中却显示为乱码。sonar在解析报告的时候会报如下的错误信息。

关于maven集成jacoco、sonar无法生成单元测试覆盖率问题和jacoco报告编码问题(Invalid UTF-8 start byte)

解决办法:

1.检查是否有配置 sonar.sourceEncoding=UTF-8

2.检查org.apache.maven.plugins的版本是否老旧,使用2.19.1测试没问题(据说高版本解决了控制台日志乱码问题)

3.增加如下配置,解决无法生成jacoco.exec文件 。

传送门(解决无法生成jacoco.exec问题)

关于maven集成jacoco、sonar无法生成单元测试覆盖率问题和jacoco报告编码问题(Invalid UTF-8 start byte)
关于maven集成jacoco、sonar无法生成单元测试覆盖率问题和jacoco报告编码问题(Invalid UTF-8 start byte)

记得每次执行前clean一下项目,防止受到上次的结果干扰。

OK 记录完毕  睡觉!