5 PHP代码审查

为什么要使用自动化PHP代码分析工具?

传统的PHP代码审查要求一支开发人员的军队。做Go PHP代码审查要求稀缺专家。可持续的PHP代码审查要求每个用于帮助管理代码的工具。

随着技术债务的越来越重要,在PHP在其他地方,我们已经看到了过去两年的创建多种工具,旨在自动化代码审查并利用这一内部开发人员活动。

Devops领导者面对不同类别的工具:要么专用于Sensiolabs的Insight等框架,或者像PHP等CODE气候的PHP中的普查程序-CI,编码或新条目。

这些工具是采用旨在尽快检测引人注目的缺陷的工具的大大转变。

自动化代码审查的主要优势(即静态源代码分析)在没有代码的实际执行的情况下快速和自动检查。因为它针对手动发现的问题,因为它是人眼的完美帮助。

尽管如此,基于Rebellabs的研究,超过80%的代码审查由严格的代码修复不关注......即使这些工具也有超过60%的公平收养。为什么这一情况?

在工作流程功能集成在开发生命周期中的检查后,这些工具的质量基于质量 PHP规则库 (以另一种方式说  PHP专业知识 )。

商业工具的PHP专业知识怎么样?

我们试图回答这个问题,为什么在检查后低代码修复,在评估每个规则时。

在我们的研究中,我们评估了4个被认可的工具作为我们的项目exakat: 思考人员-CI., Sensiolabs的洞察力, 编码 代码气候.

作为起点,我们只关注除了可用的规则,不包括致力于其他环境的规则:C,CSS,Java或Python。

全局结果作为全局分数作为4个不同类别的栏中提供:
PHP项目全球 旨在将适用于任何不包括专门针对特定项目或框架的法规的所有规则进行分类。此类别包括安全性,错误风险,性能或已弃用代码。
编码公约 旨在将所有规则分类为在相同的样式(梨,PSR-1,PSR-2,...)中编写代码,
致力于框架 旨在将适用于特定项目或框架(Zend Framework,Symfony,Spip,...)的规则进行分类,
生产环境 旨在将致力于生产事项的规则进行分类。

5 PHP代码审查工具比较

 

主课程是审查器-CI明确超过所有其他关于PHP规则数量的商业工具以及引人注目的类别之间的平衡。 exakat和Insight实验室不是到目前为止,但代码气候和编码显然不适用于加强PHP项目的质量。这些工具要么年轻或迟到的PHP市场。

 

在4个类别内,可以排除强制性但未添加的值:编码约定。然后,专注于单一类别,这是PHP质量的旗舰(PHP项目的全球),感觉得到了确认。

5 PHP代码审查工具 - 专注于全局PHP规则

 

除Scrutinizer-CI外,很难使用市场的商业工具来提高PHP质量的质量。这些工具通过他们的工作流程功能很有希望,但由于他们的PHP专业知识的良心,为代码提供了糟糕的知识或洞察力。

价格?

我们在下表中添加(以红色为单位)标准团队要求对“全球PHP项目”类别的平均价格。

5 PHP代码审查工具 - 性能与价格

代码气候是其他工具的两倍。编码,Insight Labs和Scrutinizer-CI仍然存在于同一槽中。洞察力是商业工具的昂贵。通过对交响乐的专业化和工作流程级别,定价位置处于级别。

为什么要启动exakat

总之,审查器-CI是开始引人注目的自动化码审查方法的最糟糕的商业工具。代码气候,PHP市场的最后一个条目,但也越昂贵,需要改进其解决方案,以明确适用于PHP项目。

在这种情况下,我们已经确定了几个月的机会,PHP铅DevOps拥有一个新工具,可以利用新技术的可能性,实际上大量的PHP代码。我们已经为此新工具定义了3个特征:专业知识,焦点和开放。