Given, When, and Then
Given/When/Then words are the common vocabulary that spans the divide between business and technology, and as described at http://behaviour-driven.org, they can also be referred to as the ubiquitous language of Behavior-driven Development. The framework is based on the following three core principles that we reproduce here, verbatim:
- Business and technology should refer to the same system in the same way
- Any system should have an identified, verifiable value to the business
- Up-front analysis, design, and planning, all have a diminishing return
Behavior-driven Development relies on the use of this specific vocabulary. Additionally, the format in which requirements are expressed is predetermined, allowing tools to interpret and execute them:
- Given: This is to describe the initial state before an external stimuli is received.
- When: This is to describe the key action the user performs.
- Then: This is to analyze the results of the actions. To be observable, the actions performed...