Behaviuor Driven Development (BDD) using JBehave
Main Aspects of TDD
- Focus on single unit
- Safety net
- Isolation
- Iterative Process
Limitations with TDD
Main aspects of BDD
To Bridge the communication gap between developers, QA & non-technical stakeholders
- Extension of TDD
- Test cases in natural language
- What to test, what not to test
- Understanding of the system
- Real needs
- Software that matters
BDD Benefits
- Clarity
- Favors Automation
- Focuses on Business value & needs
- High Visibility
- Meet user needs
- Lower Costs
- Favor change
BDD Challenges
- Strong collaboration and engagement
- Difficult in isolated teams
Introducing a new feature
Features - High level Requirements
Break the feature into stories
Acceptance Criteria
JBehave functionalities
- Write Stories
- Map steps
- Configure stories
- Run Stories
JBehave Terminologies
- Story
- Scenario
- Steps