В последнее время это заставило меня гать...
Что такое рефакторинг?
Рефакторинг кода - это процесс реструктуризации существующего компьютерного кода - изменение факторинга - без изменения его внешнего поведения.
И как мы убеждаемся, что мы не нарушаем что-либо во время рефакторинга?
Перед рефакторингом раздела кода необходим надежный набор тестов с автоматическим модулем. Тесты используются для демонстрации того, что поведение модуля правильное перед рефакторингом.
Хорошо. Но как я могу продолжить, если обнаруживаю, что запах кода в модульных тестах сам? Скажем, метод тестирования, который делает слишком много? Как я могу убедиться, что я ничего не нарушаю при реорганизации модульных тестов?
Нужны ли мне какие-то мета-тесты? Является ли это модулями все время?
Или модульные тесты просто не подчиняются нормальным правилам рефакторинга?