Processing math: 100%

Altri criteri

I criteri visti finora non considerano i cicli e possono essere soddisfatti da test che percorrono ogni ciclo al più una volta. Molti errori però si verificano durante iterazioni successive alla prima, come per esempio quando si superano i limiti di un array.

Occorre quindi sviluppare dei criteri che tengano conto anche delle iterazioni e stimolino i cicli un numero di volte sufficiente.

Esempio 4: copertura delle iterazioni
Pseudocodice Diagramma di flusso di esecuzione
01 void main() { 02 float a, b, x, y; 03 read(x); 04 read(y); 05 a = x; 06 b = y; 07 while (a != b) { 08 if (a > b) 09 a = a - b; 10 else 11 b = b - a; 12 } 13 write(a); 14 }

Esempio criteri di copertura