SonarQube 7.3 它内置了对 golang 的支持,我发现至少有 2 个问题:-
它不会自动将 *_test.go 从覆盖范围中排除。在单元测试中,它还会获取 IP 地址并要求它们可配置(不是恒定的,也不能修复错误)。
它将 structs 和 const 视为未覆盖的行,因此覆盖率明显低于 go 覆盖工具本身,使其成为一个糟糕的用例。例如,在一个中等规模的项目中,它报告了 40% 的覆盖率,而 go 工具的覆盖率为 70%
除了将它们全部注释为声纳排除或将常量和结构放在一个通用的排除模式文件中之外,还有其他事情可以做吗?是否有计划在更高版本的 SonarQube 中解决这些问题?