Здравствуйте, Ikemefula, Вы писали:
I>>>Самый главный принцип — красный юнит тест должен однозначно указывать на источник ошибки. Не 'что то отвалилось' а 'метод сенд актора обнуляет бехевиор если была ошибка'
Y>>Нет, не должен. Потому что это не только бесполезно — зная об ошибке в определённом сценарии ты её и так найдёшь,
I>А временем на поиски можно пренебречь?
Да, можно. По сравнению с обкладыванием каждого геттера-сеттера тестами для точного указания это на уровне погрешности.
I>Вообще то юнит-тесты избавляют от дебага. Классика юнит-тестирования — код теста содержит минимум кода и один-два ассерта. Отсюда ясно, что ошибка видна практически сразу, без необходимости дебага и поисков.
Ну да. Для сферической программы с абсолютным бюджетом. Юнит-тесты со 100% покрытием, полностью избавляющие от дебага и поисков сродини Снежному Человеку: все об этом говорят но никто не видел.
I>Наоборот, геттеры и сеттеры размывают профит из за того, что тестируется 'что унутре'. С конструкторами ровно то же — тестирование 'что унутре'. Такой подход при малейшем телодвижении поломает вообще все тесты. ТО есть, сразу всё становится красным.
Юнит тест должен однозначно указывать на источник ошибки. Не 'что то отвалилось' а "геттер GetX() не работает". А то эта ошибка вылезет в другом месте и, о ужас!, всё, сразу всё становится красным.
А теперь оказалось, что "наоборот".