绕过Salesforce Apex代码覆盖规则的一种流行尝试是代码破坏器,其中数千条重复行中使用一个语句。我们发现诸如i=1;
或a++;
或a=b;
之类的变体,其变量名无穷无尽。所有的共同点是,两个(或更多)连续行(不包括空行或注释)是相同的。
我如何在PMD中发现这些。我怀疑需要一些XPath魔术。
答案 0 :(得分:1)
这听起来更像是复制粘贴检测器的用例。这是PMD也提供的单独工具: https://pmd.github.io/pmd-6.12.0/pmd_userdocs_cpd.html
但是,CPD专注于查找不同文件之间的重复代码,而您似乎正在寻找一个文件内的重复代码 。