JAVA-BDDC
New Behavior-Driven Development with Cucumber
Description
BDD, or Behavior-Driven Development, is an innovative development methodology aimed at facilitating effective communication between business requirements and software development. With BDD, developers, testers, and business stakeholders collaboratively create examples and descriptions of the desired system behavior, ensuring that everyone has a shared understanding of the requirements. The methodology builds on Test-Driven Development (TDD) but extends it by focusing on business value rather than technical details.
In practical BDD application, a structured, understandable language—such as the Given-When-Then format—is used to define the rules, examples, and expectations governing system behavior. This not only enables a consistent approach during the development process but also supports the creation of automated tests directly linked to business requirements. During the course, participants will learn the principles of BDD, the tools involved, and practical techniques for successful implementation, contributing to more efficient, transparent, and testable development projects.
Throughout the training, the Cucumber tool is applied to an application developed in Java, using the Spring Boot framework and Maven build tool, with examples written in the Gherkin language.
Outline
- Discovery workshop
- Example mapping
- Gherkin language
- Feature, Rule, Example, Scenario
- Given, When, Then, And, But
- Background
- Scenario Outline, Scenario Template, Examples, Scenarios
- Doc Strings
- Data Tables
- Localization
- Cucumber
- Getting started
- Step definitions
- JUnit integration
- API testing using RestAssured
- UI testing using Selenium WebDriver, Page Object design pattern
- Hooks
- Tags
- Shared state, attributes, Dependency injection, Event bus
- Configuration
- Reports
- Best and worst practices
Prerequisites
Basic Java programming knowledge.