Un test corretto richiede un approccio a più livelli. Il tuo processo di test dovrebbe prendere in considerazione questi livelli.
Ci sono almeno un paio di modi per vederlo. Uno è chiamato triangolo di test , e descrive una struttura in cui numerosi test unitari sono in fondo e alcuni test manuali sono al massimo. Tra questi due estremi ci sono test di integrazione e test di accettazione.
Un altro approccio per capire come concentrare i tuoi sforzi di test è attraverso il quadrante di test agile . Questo approccio ti consente di organizzare il test in base a ciò che testano, indipendentemente dal fatto che siano rivolti al business o rivolti verso la tecnologia (asse Y) e se servano per criticare il prodotto o supportare il team di programmazione (asse x).
(Nota: questi due modi di guardare i test non si escludono a vicenda - sono solo due modi per esaminare il problema)
Quindi, il primo passo dovrebbe essere decidere come testare. Hai intenzione di concentrarti sui test manuali? Test unitario? Puoi automatizzare i test di accettazione degli utenti? Se sei come la maggior parte dei team di programmazione, disponi di risorse limitate, quindi dovrai decidere quanto sforzo dedicare a ciascun tipo di test.
Ciascuno di questi tipi di test richiederà quindi il proprio piano, sebbene non sia necessariamente necessario un piano formale e scritto. Ad esempio, il piano per il testing delle unità sarebbe semplicemente che gli sviluppatori dovrebbero scrivere test unitari per qualsiasi codice che scrivono e dovrebbero essere eseguiti dopo ogni build.