Книга: Экстремальное программирование. Разработка через тестирование
Можно ли использовать TDD для разработки крупномасштабных систем?
Можно ли использовать TDD для разработки крупномасштабных систем?
Позволяет ли методика TDD разрабатывать крупномасштабные программные проекты? Какие новые типы тестов вам потребуется написать? Какие новые шаблоны рефакторинга могут потребоваться?
Самой крупной программной системой, целиком и полностью разработанной в стиле TDD, в создании которой я принимал участие, является система LifeWare (www.lifeware.ch). Работа над системой велась в течение 4 лет. Объем работ оценивается в 40 человеко-лет. На текущий момент система включает в себя 250 000 строк функционального и 250 000 строк тестирующего кода (на языке Smalltalk). Набор тестов системы включает в себя 4000 тестов, для выполнения которых требуется 20 минут. Полный набор тестов запускается несколько раз каждый день. Реализованный в системе огромный объем функциональности, похоже, никак не снижает эффективности TDD. Избавляясь от дублирования, вы стараетесь создать большое количество маленьких объектов, которые можно тестировать изолированно друг от друга вне зависимости от размера приложения.
- Насколько большими должны быть шаги?
- Что не подлежит тестированию?
- Как определить качество тестов?
- Как TDD способствует созданию инфраструктур?
- Сколько должно быть тестов?
- Когда следует удалять тесты?
- Как язык программирования и среда разработки влияют на TDD?
- Можно ли использовать TDD для разработки крупномасштабных систем?
- Можно ли осуществлять разработку через тестирование на уровне приложения?
- Как перейти к использованию TDD в середине работы над проектом?
- Для кого предназначена методика TDD?
- Зависит ли эффективность TDD от начальных условий?
- Как методика TDD связана с шаблонами?
- Почему TDD работает?
- Что означает название?
- Как методика TDD связана с практиками экстремального программирования?
- Нерешенные проблемы TDD
- Восстановление из резервной копии на системе-приемнике
- Неисправности акустических систем
- Особенности системы защиты данных в InterBase
- Система безопасности InterBase
- Что делать, если при установке принтера появляется сообщение Невозможно завершение операции. Подсистема печати недоступн...
- Расширенные возможности указания пользовательских планов
- Системные переменные ROWS_AFFECTED, GDSCODE, SQLCODE, TRANSACTIONJD, CONNECTIONJD
- Системное программное обеспечение
- Возможности, планируемые к реализации в следующих версиях
- Хранение конфигурации в системном реестре
- Модификация системных таблиц
- 7 Система Цикл: долгосрочные цели