#code-coverage #apex #pmd #code-duplication #cpd
#покрытие кода #apex #pmd #дублирование кода #cpd
Вопрос:
Популярной попыткой обойти правила покрытия кода Salesforce Apex являются code busters, в которых одна инструкция используется в тысячах повторяющихся строк.
Мы нашли такие варианты, как i=1;
или a ;
или a=b;
с бесконечными вариациями имени переменной. Общим для всех является то, что две (или более) последовательные строки (исключая пустые или комментарии) идентичны.
Как я могу обнаружить их в PMD?
Ответ №1:
Это больше похоже на вариант использования детектора копирования-вставки. Это отдельный инструмент, также доступный в PMD: https://pmd.github.io/pmd-6.12.0/pmd_userdocs_cpd.html
Однако CPD ориентирован на поиск дублированного кода между разными файлами, в то время как вы, похоже, ищете дублированный код внутри одного файла.
Комментарии:
1. Я специально ищу последовательные идентичные строки. Я в курсе CPD — нам было с ним очень весело (и некоторые покраснели). На самом деле не работает для этого варианта использования