И ещё кое-что об автотестировании

Пожалуй, настало время посмотреть на автотестирование более зрелым взглядом и переосмыслить некоторые моменты (а заодно возобновить блог).
Так получилось, что тема автотестирования очень уж тесно связана с темой принципов корпоративного программирования в целом, поэтому и статья будет затрагивать многие вопросы «программирования вообще». «Программирование вообще» я понимаю как процесс наибыстрейшего решения максимального количества задач предметной области с минимальным числом ошибок. Что ж, посмотрим, как автотесты способны нам в этом помочь→

Кое-что об автотестировании

В сети существует огромное количество руководств и рекомендаций по использованию юнит-тестов разной степени умозрительности, но реальных случаев внедрения автотестирования с очевидной пользой я пока не наблюдал (что, должен сказать, меня весьма удручает). Во всех наблюдаемых мной случаях люди либо стремились достичь 90-100% покрытия кода тестами, затрачивая на это прорву времени и усилий (а потом ещё одну прорву на поддержку тестов в актуальном состоянии), либо писали тесты «для галочки», особо не заморачиваясь смыслом своих действий, либо находились в промежуточном состоянии между этими двумя крайностями. И лишь недавно мне удалось найти ряд случаев, когда автотесты экономят больше времени, чем требуется на их написание и поддержку→