1. What is BDD ?
Behaviour Driven Development methodology
http://en.wikipedia.org/wiki/Behavior_Driven_Development
Methodology by which QA, BA and SMEs get involved
early in defining requirement through a common
language.
Compliments TDD but does not replace it.
Specify the requirements in form of
Given/When/Then/And (Not mandated) – But widely
accepted
A communication protocal
Becomes executable acceptance test
QAInfoLabs
2. Why BDD ?
Non technical audience can get involved early in
Automating process.
Language used in writing BDD is the language used
by all stakeholders.
Enhances collaboration between Technical and Non
technical team
Behaviour of the system eventually becomes an
executable Acceptance test
Focuses on what to automate rather then how to
automate ?
4. What BDD is not ?
A Language defined for business to specify
requirement (Business Specify the requirement in
their own language)
A Testing methodology
Only meant for developers
Programming language specific tools
A TDD Tool
5. Tools Available to practice BDD
Cucumber (Ruby and Java)
Jbehave (Java)
Concordian (Java)
Specflow (C#)
EasyB (Java)
Specflow (Ruby)