Test di copertura a più condizioni
-
27-09-2019 - |
Domanda
Quando si utilizza il metodo di test White Box chiamato Copertura a più condizioni, prendiamo tutte le istruzioni condizionali o solo quelle con più condizioni? Ora forse gli indizi nel nome ma non ne sono sicuro.
Quindi se ho il seguente metodo
void someMethod()
{
if(a && b && (c || (d && e)) ) //Conditional A
{
}
if(z && q) // Conditional B
{
}
}
Geno la tabella della verità solo per "condizionale A" o faccio anche condizionale b?
Grazie,
Soluzione
Potrei perdere qualcosa qui ma, il modo in cui hai scritto il codice nella tua domanda, le condizioni A e B sono completamente indipendenti l'una dall'altra. Pertanto non coprirai tutto il codice se non si verificano entrambi i condizionali.
Altri suggerimenti
Ho trovato quanto segue sulla copertura a più condizioni. Ciò sembrerebbe indicare che la copertura multipla delle condizioni, come suggerisce il nome, si applica solo ai condizionali con più istruzioni.
Quindi per il seguente condizionale:
if ((a>0)&&(b<=4)&&(c>0))
Creiamo quanto segue
Test Case a > 0 b <= 4 c > 0
MCC1 F F F
MCC2 F F T
MCC3 F T F
MCC4 F T T
MCC5 T F F
MCC6 T F T
MCC7 T T F
MCC8 T T T