L'obiettivo del test è identificare e risolvere i problemi che altrimenti impedirebbero al prodotto di soddisfare le aspettative degli utenti finali. Tuttavia, nel corso degli anni si sono verificati costosi problemi di qualità nonostante i notevoli progressi nei test delle applicazioni software. Negli anni '60, il test del software era in gran parte limitato al test di singole righe di codice o test unitari. Ma nel corso dei decenni, il processo di test si è espanso fino a includere diversi tipi di strategie di test e obiettivi di test, che vanno dal test di integrazione, che garantisce che diversi componenti software possano funzionare insieme, al test di regressione, che controlla se gli aggiornamenti del codice o delle funzioni danneggiano la funzionalità complessiva del software.
Mentre lo sviluppo di diverse strategie di test può consentire alle organizzazioni di scoprire più problemi, la varietà di test e metriche di test disponibili crea una sfida: la definizione delle priorità. Le organizzazioni devono dare priorità ai tipi di test e ai casi di test necessari per identificare i problemi più urgenti e risolverli tempestivamente. Questa sfida è aggravata dalla crescente complessità dei prodotti testati: più funzioni e caratteristiche per prodotto richiedono ancora più test.
La mancanza di definizione delle priorità e di ottimizzazione nella pianificazione dei test può portare a cicli di test inefficienti e inefficaci, impedendo l'esecuzione di metodologie di sviluppo come quella agile e DevOps, consentendo al contempo di eliminare difetti costosi. Fortunatamente, la gestione dei test e gli strumenti di gestione dei test possono aiutare a mitigare queste sfide, consentendo ai team di sviluppo di accelerare la fornitura di software di alta qualità e soddisfare le esigenze di scalabilità.