Вход на сайт
Unit Test. Кто использует?
1707 просмотров
Перейти к просмотру всей ветки
в ответ MrSanders 01.11.16 17:29
Ну да, доступ ко всему - через синхронизированную очередь.
Я бы сказал, что через единый интерфейс.
Не только лишь все понимают что проще купить сервер помощнее чем экономить микросекунды на синхронизации и оплачивать недели поиска причин спорадической ошибки.
Все это не имеет никакого отношения к юнит-тестированию.
Иногда потокам надо лезть к одним и тем же объектам. А ошибку в таком доступе юнит тестом (достоверно) не обнаружить.
Ну да, я понял. Лезть надо к одним и тем же объектам и при этом без синхронизации, потому что синхронизация - это дорого :)
Кстати, написание юнит-тестов делает разработку дороже где-то в 1,5-2 раза.
Чтобы ошибок понаделать в многопоточном коде и где-нить дедлок влепить или асинхронный доступ не надо быть диверсантом. Такие ошибки все делают.
Конечно. Наличие юнит-тестов не гарантирует отсутствие ошибок. TDD и юнит-тестирование позволяет обойти многие проблемы за счет того, что написанием юнит-теста разработчик устанавливает требования, а productive code эти требования удовлетворяет.