2017-06-06 6 views
0

Kann ich eine Frage haben? Was ist der Unterschied zwischen Condition Coverage und Decision Coverage?Condition Coverage versus Decision Coverage Tests

Ich habe einfach Beispiel:

IF (A & & B) THEN

Zustand Abdeckung zwei Tests haben wird (Das Ergebnis wird falsch sein):

  1. A = TRUE, B = FALSE
  2. A = FALSE, B = WAHR

Entscheidung Abdeckung wird nur ein Test (Das Ergebnis wird wahr sein):

  1. A = TRUE, B = TRUE

Habe ich das richtig verstanden?

+0

https://softwareengineering.stackexchange.com/questions/184807/branch-vs-decision-coverage-question –

Antwort

0

In Zustand Coverage (auch als Prädikat Coverage weiß) jeder der Booleschen Ausdrücken muss wahr und falsch mindestens einmal ausgewertet werden. Zum Beispiel:

IF ((A || B) & & C) THEN

Um die Bedingung Deckungskriterien zu erfüllen, können Sie die folgenden Tests verwenden:

1) A = true | B = nicht prüfen | C = falsch

2) A = falsch | B = wahr | C = Wahr

3) A = falsch | B = falsch | C = nicht eval

In Decision Coverage (auch bekannt als Branch Coverage) müssen Sie alle möglichen Zweige testen. Zum Beispiel:

...

IF (A) {

ELSE IF (B) {

} else {

}

...

Um die Entscheidung Abdeckungskriterien für dieses Stück Code erfüllen Sie 3 Tests durchführen müssen:

1) A bis wahr

2) A bis falsch ausgewertet wird ausgewertet und B ausgewertet wird, um wahre

3) A und B ausgewertet werden, um falsche