I’ve not blogged about a misconception for a while, so here’s a really annoying one to add to the series…
FEATURE FILE SCENARIOS ARE NOT TEST CASES!!
Sorry for the caps… I hope the picture above can portray my annoyance at this misconception.
I don’t know where this comes from. Maybe it’s the terminology of “scenario”… But either way, it’s something I’ve seen a lot in many different places; people writing feature file scenarios as if they are test cases, where you see lots of “Give… And… And… And… And… And…” etc for test data set up just before they add the “check” for their “test case”.
I’ve even seen people write feature files after they’ve developed and tested the feature, so that they have some “test documentation for regression testing”.
The reality is – feature file scenarios are actually requirement examples. Turning your requirements into examples helps you refine your requirements. The feature files are design documents for each feature – to help enable you to design and build the “right thing”!
More important than the feature files is having the discussions that come with building the feature files. The 3 Amigo conversations and the collaboration and communication between the business and the team.
So before you jump into writing your next feature file, take a step back. Think of the scenario as a requirement example rather than as a test case and start seeing the effectiveness of utilising BDD for your development.
(And if you want follow up reading, buy the book “Specification By Example” by Gojko Adzic)