Часть III. Шаблоны разработки через
тестирование
Далее след уют «величайшие хиты» – шаблоны разработки через
тестирование. Некоторые из них являются эффективными приемами
работы в стиле TDD, д ругие – шаблонами проектирования и, наконец,
третьи – шаблонами рефакторинга. Третья часть книги является
коллекцией справочного материала, необход имого как д ля о своения
пред ставленных в книге примеров, так и д ля само стоятельного
совершенствования навыков работы в стиле TDD. Зд есь пред ставлены
свед ения,
которые
помогут
лучше
понять
смысл
примеров,
рассмотренных в первых д вух частях книги, а также под огреют ваш
интерес и стимулируют обратиться к д ополнительной информации,
которую след ует искать в д ругих источниках.
25. Шаблоны разработки через тестирование
Прежд е чем приступить к обсужд ению эффективных метод ов
тестирования, д авайте попробуем ответить на несколько стратегических
вопро сов:
• Что такое тестирование?
• Когд а мы выполняем тестирование?
• Какая логика нужд ается в тестировании?
• Какие д анные нужд аются в тестировании?
Тест
Каким образом след ует тестировать программное обеспечение? При
помощи автоматических тестов.
Тестировать
означает
проверять
. Ни од ин программист не считает
работу над некоторым фрагментом код а завершенной, не проверив его
работо спо собно сть
(исключение
со ставляют
либо
слишком
самоуверенные, либо слишком небрежные программисты, но я над еюсь,
что сред и читателей д анной книги таких нет). Од нако, если вы
тестируете свой код , это не означает, что у вас
есть
тесты.
Тест
– это
процед ура, которая позволяет либо под тверд ить, либо опровергнуть
работо спо собно сть
код а.
Когд а
программист
проверяет
работо спо собно сть
разработанного
им
код а,
он
выполняет
тестирование вручную: нажимает кнопки на клавиатуре и смотрит на
результат работы программы, отображаемый на экране. В д анном
контексте тестирование со стоит из д вух этапов: запуск код а и проверка
результатов
его
работы.
Автоматический
тест
выполняется
автоматически: вместо программиста запуском код а и проверкой
результатов занимается компьютер, который отображает на экране
результат
выполнения
теста:
код
работоспособен
или
код
неработоспособен
.
В
чем
со стоит
принципиальное
отличие
автоматического теста от тестирования код а вручную?
На рис. 25.1 пред ставлена д иаграмма взаимовлияния межд у
стрессом и тестированием (она напоминает д иаграммы Герри Вейнберга
(Gerry Weinberg) в его книге
Quality Software Management
). Стрелка
межд у узлами д иаграммы означает, что увеличение первого показателя
влечет за собой увеличение второго показателя. Стрелка с кружком
означает, что увеличение первого показателя влечет за собой
уменьшение второго показателя.
Do'stlaringiz bilan baham: |