Given-When-Then
Appearance
Given-When-Then (GWT) is a semi-structured way to write down test cases. They can either be tested manually or automated as browser tests with tools like Selenium and Cucumber.[1][2]
It derives its name from the three clauses used, which start with the words given, when and then.[3] 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.
The Given-When-Then was proposed by Dan North in 2006, as part of behavior-driven development.[4]
See also
- Acceptance test-driven development
- Acceptance testing
- Behavior-driven development
- Cucumber syntax
- Hoare triple
References
- ^ Percival, Harry (11 June 2014). Test-Driven Development with Python: Obey the Testing Goat: Using Django, Selenium, and JavaScript. "O'Reilly Media, Inc.". ISBN 978-1-4493-6517-2.
- ^ Pugh, Ken (22 December 2010). Lean-Agile Acceptance Test-Driven Development: Better Software Through Collaboration. Pearson Education. ISBN 978-0-321-71944-7.
- ^ 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.