Я соглашаюсь с Ken, что поблочное тестирование является частью разработки программного обеспечения.
О вопросе о стоимости, это верно, чем запись, что код плюс модульный тест более длинен, чем запись просто кода. Однако, когда Вы пишете код наряду с его тестами - который называют TDD - Разработка через тестирование , Вы заканчиваете" чистый код, который работает ". Когда Вы просто пишете код, тогда необходимо заставить его работать, который может быть длинным и болезненным.
Другое преимущество - то, что Вы знаете, где Вы, поскольку код, который был записан, был уже протестирован на единицу.
Для ответа на вопрос, да, я использую поблочное тестирование на своих проектах, когда это возможно. Я пишу модульные тесты на весь новый код, и я борюсь для унаследованного кода.
Я видел, что это называется структурным выделением или выделением кода.
Существует подключаемый модуль Visual Studio под названием CodeRush от Developer Express, который поддерживает это (внизу страницы) и многое другое.
обновление:
Как сказал divo, существует бесплатная облегченная версия CodeRush . Я подтвердил, что он включает в себя структурное выделение.
К сожалению, Visual Studio не поддерживает отступы строк из коробки.
Эти строки, возможно, более полезны в Python, где отступы обозначают вложение. В C # вложенность явно обозначена фигурными скобками. Мне кажется, что фигурные скобки дают мне визуальные подсказки, чтобы увидеть такие вещи, так что вы можете просто попытаться упорствовать - со временем когнитивная нагрузка, связанная с проблеском C # по сравнению с проблеском Python, достигнет равновесия.
VS2010 реализует текстовый редактор в WPF, и в Интернете есть несколько примеров создания подключаемых модулей, расширяющих область текстового редактора. Это мог бы быть забавный проект, но не слишком сложный.
Я завидую вложенности Python, ориентированной на отступы. Я бы хотел, чтобы компилятор C # поддерживал что-то подобное. Я бы хотел, чтобы пустое пространство было частью языка. Это также улучшило бы поддержку языка инструментами.