- »
- Tech books »
- Clean coder »
- 7. Acceptance testing
-
7. Acceptance testing
1. Communicating requirements
- Example of working with manager coding
- Discovered his and my vision are different
Premature precision
- Business
- Want to know what they will get exactly
- Developers
- Want to know exactly what they are supposed to deliver
- Both cannot be acihieved
The uncertainty principle
- When delivered,
- It gives new info to people
- new expecations
- More precise your requirements... less relevant they become
- When system is implemented
Estimation anxiety
- Accurate estimate is not possible
- Estimates are Estimates
- So, include error bars
Late ambiguity
- Can mean different to business and programmers
- Professional's responsibility
- Remove ambiguity from requirements
2. Acceptance tests
Definition of "Done"
- Professionals drive definition all the way to acceptace tests
Communication
- Purpose of acceptance tests
- Communication
- Clarity
- precision
- Professionals make sure all parties know what they want
Automation
- Acceptance tests shlould be automated.
who writes acceptance tests and when?
- Business analysts write
- Happy path version
- QA writes unhappy path
- When?
- Late precision - so, as let as possible
- First day of iteration, mid point and ,,,
The developes role
- Dev's job to connnect acceptance test to system
- Make tests pass
Acceptance and unit test
- Acceptance tests are not unit tests
- Witten by business for business