unit test и exception

Long

Новичок
unit test и exception

может быть я плохо читал, но как-то не отложилось - есть структура классов, для обработки исключительных ситуаций. как правильно действовать - должны ли тесты покрывать эту структуру? подозреваю, что универсального ответа нет, но может существует какой-то общий подход к тестированию exception? пока склоняемся к тому, что это бессмыленное занятие - exception (пока) занимается только логированием (класс логирования тестируется отдельно).
 

zerkms

TDD infected
Команда форума
мы тестируем эксепшны примерно так:
PHP:
try {
foobar();
$this->fail('exception expected');
} catch(concreteExceptionType $e) {
$this->assertEqual/assertMatch/... ($e);
$this->pass();
}
это в simpletest. в unittest вроде есть более правильные средства для проверки.
 

Long

Новичок
ну ребята... _как_ тестировать - это понятно. вопрос-то в том - нужно ли это?
 

zerkms

TDD infected
Команда форума
Long
конечно нужно. чем return лучше эксепшна? такое же детерменированное поведение объекта/класса.
 

fixxxer

К.О.
Партнер клуба
я так думаю, что checked exceptions точно тестить надо, unchecked - на усмотрение, в зависимости от.
 

jahson

Новичок
Автор оригинала: fixxxer
я так думаю, что checked exceptions точно тестить надо, unchecked - на усмотрение, в зависимости от.
Чекеды просочились в пхп? ) Они вообще бяка ужасная. Хотя, погоди, я понимаю о чём ты ) Лучше назвать "ожидаемые" )
---
Тестировать, они ведь если есть в коде - значит будут валиться. Поэтому лучше проконтролировать, что валятся те, которых ждали.
Но! Если какая-либо логика завязана на исключения - бить по рукам долго и больно.
 
Сверху