Разработчик BDD
Поведенческая разработка (Behavior-Driven Development, BDD) - это ответвление от тестовой разработки (Test-Driven Development, TDD), в котором особое внимание уделяется сотрудничеству между разработчиками, службой качества, а также нетехническими или бизнес-участниками программного проекта. Разработчик BDD отвечает за реализацию этой методологии при разработке программного обеспечения.
Вот основные задачи, которые выполняет BDD-разработчик:
. Совместное планирование: Разработчики BDD тесно сотрудничают с бизнес-аналитиками, владельцами продуктов и другими заинтересованными сторонами, чтобы понять требования к программному обеспечению. Этот процесс часто включает в себя создание "пользовательских историй", которые описывают, что должно делать программное обеспечение с точки зрения пользователя.
. Написание BDD-сценариев: Используя такой язык, как Gherkin, разработчики BDD пишут сценарии, которые описывают ожидаемое поведение системы. Эти сценарии пишутся таким образом, чтобы они были понятны нетехническим заинтересованным сторонам, а также разработчикам и тестировщикам.
. Разработка файлов характеристик: Сценарии, написанные разработчиками BDD, хранятся в файлах характеристик. Эти файлы служат связующим звеном между нетехническими описаниями того, как должна работать функция, и кодом, реализующим эту функцию.
. Автоматизация тестов: Разработчики BDD пишут код, автоматизирующий сценарии, описанные в файлах возможностей. Этот код служит одновременно и тестом для функции, и спецификацией того, как эта функция должна себя вести.
. Рефакторинг и сопровождение кода: После написания тестов BDD-разработчики пишут фактический код, чтобы тесты выполнялись, следуя циклу "красный-зеленый-рефактор". Для этого необходимо написать код, проверить, проходит ли он тесты (если нет, то изменить код до тех пор, пока он не пройдет тесты), а затем рефакторить код, чтобы улучшить его структуру и при этом обеспечить прохождение тестов.
. Непрерывная интеграция: BDD-разработчики часто работают в командах, использующих непрерывную интеграцию. Это означает, что они регулярно сливают свои изменения с основной кодовой базой, а автоматизированные тесты выполняются для того, чтобы убедиться, что новый код ничего не нарушил.
. Коммуникации и документация: Разработчики BDD уделяют значительную часть своего времени общению с другими членами команды и заинтересованными сторонами, чтобы убедиться, что все понимают поведение программы. Кроме того, они тщательно документируют свою работу, чтобы в будущем она была понятна другим.
Сосредоточившись на поведении, а не на реализации, BDD-разработчики стремятся создать программное обеспечение, точно отвечающее требованиям пользователей и удобное для сопровождения и модификации с течением времени.