воскресенье, 4 декабря 2011 г.

Behavior Driven Development in PHP

Сегодня поговорим о BDD. BDD - это разработка через сценарии поведения приложения, т.е. через функциональные тесты и понимание вариантов использования к коду, который уже покрыт функциональными тестами.
BDD - это практика, которая задевает как процессы разработки, так и используемые инструменты. Инструментов сейчас уже вышла достаточно большая кучка (ура, не только кукумбер), для различных платформ и языков. Как правило, большинство инструментов поддерживают синтаксис Gherkin - это то, как оформлять сценарии в виде тестов. И конечно же, много инструментов есть для PHP, давайте посмотрим :)




А теперь вопрос для внимательных, какие приложения можно тестировать с помощью BDD, а какие лучше не стоит?

3 комментария:

  1. Никакие не стоит. Оно больше про написание спецификаций чем про тестирование изначально.

    И я не думаю что корректно писать "BDD = TDD + Acceptance Testing". Скорее TDD на уровне спецификаций, я не кода.

    А вот перепил BDD тулов или их использование не по назначению (т.е. вне концепции BDD) может вполне интересные результаты дать.

    ОтветитьУдалить
  2. Пообщалась с коллегой из Netcracker на SQADays, у них достаточно сложная разработка тестируется с помощью BDD. Ручные тестировщики в том числе и пишут сценарии (ключевые слова и т.д.), потом это парсится и реализуется автоматизаторами с помощью их самописного фрейворка.

    ОтветитьУдалить
  3. red_foks, да, согласен, что с помощью BDD можно тестировать достаточно сложные приложения. Надеюсь и думаю, что у нас в 2ГИС тоже будет скоро применяться :)
    To Сергей: использование BDD-тулзов влоб практически всегда будет давать результаты "не очень". А вот про изначально и про требования я бы поспорил :) Изначально не только требования, а вполне читабельные тесты должны быть.

    ОтветитьУдалить