Здравствуйте, landerhigh, Вы писали:
L>Это парсер метки времени хитровыдуманного индустриального протокола, который несет в себе, кроме собственно метки времени, еще кучу всякой ерунды полезной информации вроде индикатора качества часов, источника синхронизации, индикатора аварии и т.п, причем ужато все это самым извращенным способом, до которого можно было додуматься только под веществами. Те, кто могут такое делать в одну строку, какают фиалками и ездят на единорогах
Вот я по то же. black-box тестирование алгоритма может сказать только то, что он в некоторых случаях работает правильно или нет.
Если алгоритм достаточно сложен, и мы знаем, что он неисправен, далеко не всегда тесты помогут выявить ошибку.
L>Если это программист, то он знает, какие условия нужно проверять. В том числе он также напишет тест, проверяющий, не расходится ли алгоритм в заоблачные дали. И так его и назовет. И если этот тест провалится, то даже никакого "пристального взгляда" не понадобится, все будет понятно сразу.
Так что именно будет понятно из теста-то? Что ничего не работает? Что дальше делать?
L>И, что характерно, написание такого теста (один раз, к слову сказать), займет меньше времени, чем просто запустить программу под отладчиком. Один раз. И, что будет оценено намного позже, этот тест будет там тогда, когда о нем уже забудут и какой-то джуниор в попытке "улучшить" алгоритм его сломает. И этот тест тут же даст ему по рукам.
Я совершенно не пытаюсь сказать, что тесты не нужны.