IT:AD:Acceptance Test
Summary
An Acceptance Test [Definition] is a single work item associated to a IT:AD:User Story.
Whereas a User Story is written in the language that a Stakeholder understands, its interpretation is subjective, leading to the risk that developers and testers, working in isolation from each other, will interpret the User Story differently. This leads to submitted code being deemed buggy by the Testers, and subsequent rework by the Developers. This is ineffective.
The more correct process is for User Stories to be submitted, which Testers pick up and define Acceptance Tests for. Developers do not work on an User Stories until their Acceptance Tests are defined.
Acceptance Tests are defined in the GWT format:
Given <Inputs> When <Trigger> Then <Result expected>
Note that the GWT format is probably as close to code that the english language can get to.
When Developers pick up a IT:AD:User Story, their first task is follow IT/AD/Test Driven Development (TDD) conventions and convert the GWT statements to automated Acceptance Tests.
Their tests fail until they then write code that passes theses tests.
The Acceptance Test passing code is then submitted to the code repository.