Behaviuor Driven Development (BDD) using JBehave

less than 1 minute read

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

  • Given
  • When
  • Then

JBehave functionalities

  • Write Stories
  • Map steps
  • Configure stories
  • Run Stories

JBehave Terminologies

  • Story
  • Scenario
  • Steps