Skip to content

    Test strategy

    Testing is how we earn the confidence to change something and know we have not broken it. We organise it around what we are trying to be sure of, not around a list of tools, because “how do we test that?” is a more useful question than “which tests do we write?”.

    • Test early and often. The cheapest problem to fix is the one caught closest to writing it.
    • Testing is everyone’s job. It is not a phase at the end, or one person’s role.
    • Automate what repeats. Save people for the judgement a machine cannot make.
    • Value, not vanity. A test earns its place through the confidence it buys, not the coverage number it moves.

    Read this from the top down. The higher rows guard against building the wrong thing; the lower ones against building it wrongly.

    To be confident that……we do
    there is a real needdiscovery and user research
    the design works for peopleusability testing and prototypes
    a single piece behavesunit tests
    the pieces work togetherintegration and contract tests
    a whole journey worksend-to-end tests
    it holds up under real loadperformance and load testing
    it fails safelyboundary, failure and resilience testing
    it is securesecurity testing, dependency scanning and penetration tests
    everyone can use itaccessibility testing
    we have not broken what workedautomated regression tests
    it behaves once livemonitoring and checks in production

    Lean on fast, automated checks low down, where they are cheap and can run constantly. Use slower, broader tests more sparingly, higher up. The right mix is a judgement per engagement, and it is one of the things the delivery quality review asks about.