Что делать, если стандарты кодирования проекта конфликтуют с охватом кода модульного теста?

Я работаю над личным проектом для обучения, и в то же время для реализации достойного кода. Частью этого образования и превращения его в приличную часть кода является модульное тестирование. Я недавно погрузился вPHPUnit и его инструменты покрытия кода.

Я столкнулся с ситуацией с конкретной реализацией, когда используемый стандарт кодирования приводит к потере покрытия кода. В этом конкретном случае нарушение используемого стандарта кодирования приводит к скачку охвата кода с 88% до 94%.

В методе у меня есть 2 строки, которые выглядят следующим образом

    // .. some data validation stuff
    trigger_error('Error validating the stuff', E_USER_WARNING);
}

Проверка данных и прочее здесь не важны,} является. Прямо сейчас, когда модульный тест проходит через эту строку кодаPHPUnit_Framework_Error брошен на линии до}, поскольку код никогда не продолжается до конца скобки, эта строка никогда не фиксируется покрытием кода.

Если я сделаю

    // .. some data validation stuff
    trigger_error('Error validating the stuff', E_USER_WARNING);}

Я получаю 6% скачок в покрытии кода. Я пытался установитьPHPUnit_Framework_Error_Warning::$enabled вfalse но затем я получаю уродливое, ожидаемое сообщение об ошибке в моем терминале, поскольку я хочу, чтобы этот проект в конечном итоге использовался людьми, кроме меня, сообщения об ошибках в модульных тестах неприемлемы. Кроме того, я действительно хотел бы, чтобы мои стили кодирования были реализованы последовательно. Нарушение стиля кода, скорее всего, выскочит при дальнейшем прочтении кода, а это значит, что мне также придется добавить страшный комментарий, объясняющий, почему фигурные скобки были перемещены ... вероятно, в нескольких местах.

Я думаю, мой вопрос (ы):

Есть ли параметр для PHPUnit, который позволил бы использовать 1TBS и по-прежнему покрываться тестом, генерирующим исключение или вызывающим ошибку, непосредственно перед}?Что важнее - следовать стандарту кодирования или увеличить охват кода? (Хотя толчок - это просто переводчик})

Ответы на вопрос(4)

Ваш ответ на вопрос