It combines requirements and testing into one integrated approach, resulting in improvement understanding by both business and technical team.
“A shipment cannot be created without specifying the recipient address”, BDD is specialized version of test driven development (TDD).
· Define a test set for the unit first
· Implement the unit
· Finally verify that the implementation of the unit makes the test succeed
To implement BDD we must know about:
- SpecFlow: BDD library/framework, works on Given, When and Then keywords where Given relates to preconditions, when represents occurrence of an event and then is testable outcome. Provides facility to write testing scenarios in human language ( DSL , domain specific language ).
- Coypu: Provides fast browsing of web applications to access elements i.e. buttons, links , fields and etc on a web page.
- Resharper : To run unit tests.