Assessing what you inherited.
WHAT TO ESTABLISH
What exists What it covers Whether it runs Whether it is trusted
WHAT TO MEASURE
Suite duration Pass rate Frequency of spurious failures Coverage of critical areas
WHAT TO EXAMINE
A sample of tests, closely.
WHAT TO LOOK FOR
Tests with no meaningful assertions Tests verifying implementation Tests depending on each other Tests disabled and forgotten
WHAT DISABLED TESTS INDICATE
Something broke and was hidden.
WHAT TO DO ABOUT THEM
Determine why, then fix or delete.
WHAT TO TEST ABOUT THE SUITE
Whether it fails when behaviour breaks.
HOW
Introduce defects deliberately, and observe.
WHAT THAT REVEALS
How much of the suite verifies anything.
WHAT TO PRIORITISE FIXING
Coverage of critical paths Flakiness Duration
WHAT TO DELETE WITHOUT HESITATION
Tests that never fail and verify nothing Tests nobody understands
WHY
They cost maintenance and provide no assurance.
WHAT TO PRODUCE
An assessment of what assurance the suite actually provides.
WHAT TO PLAN
Incremental improvement, rather than a rewrite.