Note

Il black-box testing è il collaudo di un oggetto ignorando la sua organizzazione e il suo funzionamento interno. Per farlo consideriamo il programma come una scatola nera e creiamo i casi di test a partire da un’analisi delle specifiche dei requisiti.

Questo permette al test di essere pianificato presto, perché dipende solo dalle specifiche.

Questa tecnica richiede specifiche precise e poca ambiguità.

Testing guidato dalla sintassi

Questo criterio è utile per programmi che interpretano testi secondo una grammatica formale. L’idea è che le stesse regole che il programma da testare deve osservare/riconoscere vengono usate per generare dati di ingresso per quel programma.

La grammatica fa parte delle specifiche.

Testing guidato dagli scenari d'uso

È spesso possibili derivare i casi di test dalla specifica degli scenari d’uso. Per ogni caso si possono elencare tutti i possibili ingressi che lo caratterizzano e provare quindi il comportamento del programma a fronte di tali casi.

Derivazione (semi)automatica dei casi di test dalle specifiche

Esistono linguaggi di specifica da cui si riesce a generare in modo (semi)automatico casi di test, in questo caso il testing è più efficace e automatizzato.

Generalmente queste specifiche permettono lo sviluppo di tool per la generazione automatica di casi di test (eventualmente anche con i risultati attesi).

Testing guidato dai casi limite

Alcuni errori tipici si manifestano in prossimità dei confini delle classi di equivalenza (definite come input che producono lo stesso output). Tra i vari casi di test è dunque opportuno, soprattutto nel Black-box testing, introdurre dei dati di test che vadano a verificare una corretta implementazione per i casi limite.

Grafi causa effetto

Note

I grafi causa effetto sono il modo più comune di determinare un insieme minimo di casi di test. Questi grafi mettono in relazione fatti elementari (booleani) con i risultati attesi (sempre booleani).

L’idea è che conoscendo la dipendenza di un risultato dalla combinazione degli ingressi potremo stimolare il sistema esattamente con tale combinazione e verificare se il risultato reale coincide con quello atteso.

Talvolta risulta conveniente passare da tabelle organizzate in questo modo: center