Поведенческая разработка (BDD) в программной инженерии
Behavioral Driven Development (BDD) относится к гибкому процессу разработки программного обеспечения, основанному на методологии TDD (Test Driven Development). BDD рассматривается как тест, иллюстрирующий поведение системы. Он поощряет использование разговоров и конкретных примеров на простом языке для всех, кто участвует в разработке, чтобы внести большую ясность в поведение системы. В этой разработке методы определяют различные способы разработки функции на основе поведения системы, и методы объединяются из разработки через тестирование (TDD) и разработки через домен (DDD).
Behavioral Driven Development — хороший подход к автоматизированному тестированию, поскольку он больше ориентирован на поведение системы, чем на реализацию кода. BDD упрощается с помощью естественного языка, чтобы выразить поведение системы и ожидаемые результаты от системы. В BDD участвуют все стороны, такие как клиент, разработчик, тестировщик и заинтересованное лицо, для совместного обсуждения и иллюстрации поведения системы.
Разработка, основанная на поведении, в гибкой разработке:
- Клиент и поставщик услуг обсуждают, что им нужно.
- Клиент/заказчик, разработчик и тестировщик вместе разрабатывают требования.
- Затем требования определяются в структурированных сценариях.
- Они помогают в разработке и выступают в роли автоматизированных тестов,
- Эти сценарии используются тестировщиками в качестве основы для тестов.
Жизненный цикл БДД:
- Опишите поведение –
Это включает в себя поток и особенности продукта, означает основное видение. - Определить требования –
Смоделированные требования с бизнес-правилами для общего понимания. - Запустите и провалите тесты -
Разработайте и запустите тест-кейсы. - Применить обновление кода –
Рефакторинг в соответствии с требованием. - Запустите и пройдите тесты -
Запустите обновленный код и пройдите тестовые случаи.
Но важно то, что BDD не предназначен для тестирования, как TDD. BDD направлен на достижение бизнес-целей и требований.
Делаем SDLC более простым:
SDLC (жизненный цикл разработки программного обеспечения) считается основой или спецификацией для любой разработки программного обеспечения. Здесь BDD вносит большой вклад в упрощение процесса SDLC.
- Определение требований/поведения системы на стандартном английском языке делает SRS (спецификацию требований к программному обеспечению) проще и понятнее.
- Улучшает сотрудничество между заказчиками, разработчиками и тестировщиками.
- Это оказывает большое положительное влияние на стадии тестирования и развертывания.
Преимущества поведенческого развития:
- Больше ясности в бизнес-целях и требованиях клиентов.
- Охватывает более широкий круг клиентов, поскольку использует не технические языки.
- Помогает в определении критериев приемлемости перед разработкой.
- Сосредоточено на поведении системы с точки зрения клиента и разработчика.
- Помогает избежать ненужных функций и включает важные функции.
- Сокращает усилия по устранению дефектов после модификации и после развертывания.
- Избегает неверных интерпретаций в процессе разработки.