Write verifiable Given / When / Then criteria
Vague acceptance criteria get argued over during acceptance testing, while precise scenarios can be checked, by a tester or by a coding agent. This lesson teaches you to write rigorous Given/When/Then scenarios that the whole team can read and that turn easily into automated tests.
Lesson objective
By the end of this lesson, you will be able to write verifiable, declarative Given/When/Then scenarios (minimal context, a single event, observable outcomes), name them by what sets them apart and group variants into a table of examples.
Topics covered
- Given When Then
- acceptance criteria
- BDD
- Gherkin
- test scenarios
Where it fits
Criteria, edge cases and requirements
How do you write criteria you can verify, and not forget what happens when things do not go as planned?
Lessons in this module
- Write verifiable Given / When / Then criteria (this lesson)
- Edge cases and non-functional requirements
What you will learn in the course
This lesson is part of the course Write specs that developers and AI agents understand
- Choose the level of spec suited to the decision at hand (PRD, feature spec, ticket) and know what each must contain.
- State the intent of a feature (problem, target outcome, constraints, non-goals) separately from the solution, to leave the right room to the team and the agent.
- Write verifiable, declarative and unambiguous Given/When/Then acceptance criteria, including as tables of examples.
- Identify edge cases and non-functional requirements (performance, security, accessibility, personal data) and make them testable.
- Write a spec and an intent file that a coding agent can use (context, constraints, files involved, out of scope, verifiable definition of done).
- Review a coding agent's plan against the spec, spot gaps before it writes code, then check the evidence of what was delivered.
- Keep a spec alive (versions, decisions, updates when the code reveals a case) and spot the anti-patterns that make it useless.
Related courses
- Design and Validate a Product Experience with AIJunior · ~2 hr 30 min
- Instrument a product and use data to make decisionsAdvanced · ~3 hr 30 min
- Prioritize and build an outcome-based roadmapAdvanced · ~2 hr 30 min