Чтобы там не говорили апологеты «все должно покрываться тестами и этого достаточно» просто отладчик в котором можно ходить по строкам программы нужен!
Вот только что я с полчаса тупил и никак не мог понять в чем косяк в одной из программ, пока не сделал «прыг, прыг, прыг» по строчкам в ходе исполнения. Тут же стало ясно, что допустил сразу две ошибки: в if перепутал ветки с исполнением условия и else, а также в одном из классов вызывал метод And, вместо Or.
Причем все четко логировал и уже думал, что баг в используемой либе. В принципе, при внимательном просмотре кода и без отладчика можно было сообразить, но увы. Errare humanum est. Плюс глаз может «замыливаться». Отладчик помог яснее взглянуть на код.