It derives its name from the three clauses used, which start with the words given, when and then. Given describes the preconditions and initial state before the start of a test and allows for any pre-test setup that may occur. When describes actions taken by a user during a test. Then describes the outcome resulting from actions taken in the when clause.
- Acceptance test-driven development
- Acceptance testing
- Behavior-driven development
- Cucumber syntax
- Hoare triple
- Fowler, Perryn (24 November 2009). "Perryn Fowler's Weblog". Archived from the original on 14 August 2014. Retrieved 14 August 2014.
- Gorman, Mary; Ellen Gottesdiener (9 December 2012). "Using "Given-When-Then" to Discover and Validate Requirements". Retrieved 14 August 2014.