In all textbooks and colleages’ lessons on software engineering and testing theories, we all knew what are the needed requirements to complete the testing cycles. All these are what we therorically desire to work towards when applying to working life.
However these are not always what we expect in real working world. Unexpected scope ‘creep’, unclear use cases’ definations contribute to lots of unexpected outcomes and various decision-makings to bring the projects back on track. Leeways may have to be considered what can be accepted to move the project to go-live. Testing criteria is one of the important factor to ensure what needs to be tested, to replicate the exact scenarios before cutover to Production.
We also have to set expectations to allow the project teams to decide how to make decisions to get the solution out, working towards Customer satisfactions. We are aware how good agile project management or extreme programming do provide such benefits and tangible outcomes in software engineering, likewise for iterative developments and testings.
So what are the types of exit criterias to set? Below are what I have been through since many years of software project management:
- 95% of the test cases covered - This is up to the steering commitee on agreeing at how many test cases, especially the priorites ones to be resolved.
- 90% of critical/high defects resolved – This is up to the steering commitee on agreeing at what level of defects to be resolved.
- The defined deployment setups tested and completed successfully in the test environment.
- User training – enable the users to have hands-on on the tested system and being familiar with them before going live.