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,

È stato utile?

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
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top