kaa.python wrote:
> C>Драйверы (и ядерный код вообще)
> если драйвер написан с умом, то всю логику из него можно покрыть
> тестами. взаимодействие с железом не уверен.
В драйверах очень сложно тестировать "крайние точки". Типа поведения
драйвера при hibernate. Или при резком выдергивании устройства из порта.
> C> сложный код взаимодействия разных систем
> с легкостью. главное правильно выбрать что будет тестироваться. я имею
> ввиду единицу, для которой будет писаться тест.
Ага, конечно. Особенно, если взаимодействие с другой системой
транзакционное и имеет достаточно сложную семантику.
> C> код для встроеных систем.
> тоже никаких проблем. логика с легкостью делается кросс-платформенной и
> тестируется на Win или Linux.
Ха. Ха. Ха.
Ты можешь мне показать, как я могу прикрутить систему датчиков движения,
требующий 30 GPIO входов к обычному PC с Windows? Да, мне бы еще
хотелось поддержку DMA. А, пока не забыл — для устройства нужны еще
очень точные realtime-прерывания, иначе там переполняется внутренний
буффер и теряются данные.
> C> Ну и банальный GUI.
> первый случай когда вы сказали по делу. но и тут, если ГУИ написан
> грамотно, то отдельно стоящую бизнес-логику протестировать можно.
Вот только "бизнес-логика" самого GUI никак не тестируется. Мы пробовали
несколько UI-тестеров (Marathon, GUI Dancer, SwingUnit) — они требуют
больше времени, чем экономят.
> C>Часто стоимость test harness будет превышать стоимость всего проекта в
> разы.
> часто стоимость проекта написанного по принципу "надо копать и как можно
> скорее" в разы превышает стоимость проектов в которых есть нормальное
> покрытие кода тестами.
Ага, и часто эти "проекты с нормальным покрытием" находятся в области
фантастики.
Posted via RSDN NNTP Server 2.1 beta