The Art of Unit Testing говорит о модульных тестах следующее:
Юнит-тест должен обладать следующими свойствами:
- Он должен быть автоматизированным и повторяемым.
- Он должен быть прост в реализации.
- Однажды написанный, он должен оставаться для дальнейшего использования.
- Любой человек должен иметь возможность запустить его.
- Она должна запускаться нажатием одной кнопки.
- Она должна выполняться быстро.
а затем добавляет, что она должна быть полностью автоматизированной, надежной, читаемой и сопровождаемой.
Я настоятельно рекомендую прочитать эту книгу, если вы еще не прочитали.
На мой взгляд, все они очень важны, но последние три (надежность, читаемость и сопровождаемость) особенно, поскольку если ваши тесты обладают этими тремя свойствами, то и ваш код обычно обладает ими.
Рекомендую посмотреть эти видео для лучшего погружения в вопрос: