我通常使用SonarQube对正在进行的项目执行静态代码分析,以检测最佳实践冲突和可能的异常(也使用SonarLint插件,但它超出了范围)。我知道保持尽可能低的重复率是很重要的,因为在可靠性、安全性和可维护性指标方面都给了A级。然而,对于一个软件项目来说,期望的是多低?SonarQube(版本6.7.1 (内部版本35068))使用this matrix进行重复比率评估。
搜索矩阵中使用的值的来源,并阅读搜索结果的前3页中出现的所有网页。然而,我所能找到的都是关于SonarQube的重复率是如何工作和配置的,保持低重复率的重要性(没有提到任何数字)以及指导用户解决重复的SonarQube功能。
在SonarQube领域找不到任何结果后,我扩展了我的研究,以了解软件所需的和可接受的重复率。再一次找不到任何数字,除了一些网站声明它应该是零,这对我来说似乎有些不切实际。
有人能证明矩阵中使用的值是如何决定的吗?为什么低于3的等级为A,而不是4?
发布于 2018-02-13 21:00:20
计算代码重复的公式为
Duplicated lines (%) = Density of duplication = Duplicated lines / Lines * 100您可以自行配置复制规则:

这也是文档化的here。
https://stackoverflow.com/questions/48315698
复制相似问题