BDD ‘and’ Testing

- Effective ways of using BDD concept for Testing

Giridhar Rajkumar


giridhar rajkumar



BDD - A Collaborative Model

What is BDD?

Behavior-driven development (BDD) is an Agile software development process that encourages collaboration among developers, QA and non-technical or business participants in a software project. (Wikipedia)

BDD is NOT test automation

BDD - A Catalyst For Agile

• Talks Common Language


• Thinking "from the outside in", in other words implement only those behaviours which contribute most directly to these business outcomes, so as to minimise waste


• Describe behaviours in a single notation which is directly accessible to domain experts, testers and developers, so as to improve communication

Traditional Workflow

BDD Workflow


Gherkin is a set of grammar rules that are structured enough for all stakeholder to understand the requirements

It is a simple English text language that helps Cucumber tool to interpret and run automated acceptance tests

Documentation of the system behaviour

Gherkins - Annotations

Gherkin Scenarios should not be written from the team member like the developer, tester perspective. It should always be user perspective

Gherkins - Best Practices

Gherkins - Best Practices



Gherkins & BDD


1. Testers should write GWTs (Given When Then)

2. BDD means Business Driven Development

3. Gherkins are not your Test Steps

4. BDD means Test Automation

Tester's Role

2. Testers covert the acceptance criteria to automated tests

3. Validate the acceptance criteria for exisiting functionalities with SMEs

4. Collaborate with Developers to discuss the failed acceptance criteria

5. Develop & maintain the test automation framework

1. Participate in 3 Amigos Session

Thank you!

Giridhar Rajkumar


giridhar rajkumar



Copy of How to write effective Gherkins?

By Giridhar Rajkumar

Copy of How to write effective Gherkins?

  • 92