SonarQube的代码坏味道详解

定义

CodeSmell就是翻译过来有叫坏味道也有叫代码异味的,这主要是一个和维护性相关的指标,重点的含义是保持这样的代码,会导致代码维护成本越来越高,时间长了会导致很多无法理解的代码留存在项目中,从而可能会引起一些缺陷。

等级划分

可维护性从A级别到E级别,分别表示了从非常好的可维护性到非常差的可维护性,这是由技术债务比率解决的,技术债务比率计算如下:

技术债务比率=项目的技术债务的成本/从零开始重写代码所需的成本

  • A级别:技术债务比率<=0.05
  • B级别:0.05<技术债务比率<=0.1
  • C级别:0.1<技术债务比率<=0.2
  • D级别:0.2<技术债务比率<=0.5
  • E级别:0.5<技术债务比率

那么一个项目怎么利用上述公式计算了,下面举个例子:

假设开发成本是30分钟,2500 LOC的技术债务为24000分钟的项目将有技术债务比率为24000 /(30 * 2,500)= 0.32。 因此项目的可维护性评级就是D。那么这里的LOC是开发一行代码的成本,目前采用默认的时间是30分钟,也就是LOC=30分钟(这里LOC通过从零开始重写代码所需的成本计算的。)

上一篇:契约测试:解决微服务测试的问题


下一篇:详解持续测试