Вы не можете проверить этот код. Это явное намерение !Test.isRunningTest()
. Код, защищенный этим условием, никогда не будет выполняться в контексте модульного теста Apex.
По этой причине эта структура используется и должна редко использоваться в коде Apex и только для тех элементов кода, которые абсолютно не могут быть выполнены в модульном тесте. Одним из примеров является вызов addFields()
, который иногда используется в конструкторе контроллера Visualforce, что недопустимо в контексте теста.
Очень редко можно увидеть более одной строки кода, защищенной таким образом, и это заставляет меня подозревать, что код плохо спроектирован. Защищая только одну строку кода, вы все равно можете получить покрытие кода до 100%, написав if
и его тело в одной строке:
if (!Test.isRunningTest()) controller.addFields(new List<String> { 'Name' });
Пока тест if
выполняется в тесте, вся строка считается покрытой.
Обычно этот шаблон используется для блокировки выносок. В современном коде вместо этого следует использовать Mocks.