L'esecuzione di test sottoposti a data-drive utilizza i dati da un file esterno, un pool di dati, come immissione per un test. Un pool di dati è una raccolta di record dei dati correlati che fornisce i valori dei dati alle variabili in uno script del test durante la riproduzione dello script del test.
Poiché i dati sono separati dallo script di test, è possibile eseguire quanto riportato di seguito:
Il diagramma nella parte sinistra mostra uno script di test, che utilizza i dati con riferimenti letterali hard-coded nello script di test. Il diagramma nella parte destra mostra uno script di test data-driven che utilizza i dati da un file esterno, un pool di dati.
Script di test hard-coded con riferimenti letterali Script di test data-driven con un pool di dati
Sono qui di seguito riportati degli esempi di problemi che vengono risolti eseguendo il data-drive dei test:
Problema: durante la registrazione, si crea un file del personale per un nuovo impiegato, utilizzando il numero di codice fiscale univoco dell'impiegato. Ogni volta che viene eseguito il test, viene fatto un tentativo di creare lo stesso file di personale e fornire lo stesso numero di codice fiscale. L'applicazione rifiuta le richieste duplicate.
Soluzione: è possibile eseguire il data-drive dello script di test per inviare dati sull'impiegato differenti, compresi i numeri di codice fiscale, al server ogni volta che viene eseguito il test.
Problema: si elimina un record durante la registrazione. Quando si esegue il test, Functional Tester prova ad eliminare lo stesso record e questo determina il verificarsi di errori che indicano che è impossibile trovare il record.
Soluzione: è possibile eseguire il data-drive dello script di test per fare riferimento ad un record differente nella richiesta di eliminazione ogni volta che viene riprodotto lo script.
Problema: si esegue l'eliminazione di un record durante la registrazione. Durante la riproduzione, ogni transazione prova ad eliminare lo stesso record e questo causa la restituzione di errori che indicano che è impossibile trovare il record. Soluzione: è possibile utilizzare un pool di dati per fare riferimento ad un record differente nella richiesta di eliminazione ogni volta che viene ripetuta la transazione.