Kategorie szkoleń | Egzaminy | Kontakt
  • 1
  • 1
  • 1.2K

Odpowiedź (1)

  • 2

Ze słownika „Słownik wyrażeń związanych z testowaniem”, wersja 2.02:

decyzja (decision)  = punkt w programie, w którym przepływ sterowania ma dwie lub więcej alternatywne drogi. Węzeł grafu przepływu sterowania, z którego wychodzą dwie lub więcej gałęzi.

pokrycie decyzji to odsetek możliwych wyników decyzji, które zostały przetestowane przez zestaw testowy.

gałąź (branch) = podstawowy blok, który może zostać wybrany do wykonania na podstawie konstrukcji programistycznej, która daje możliwość wybrania jednej z dwóch lub większej ilości ścieżek np. case, jump, go to, if-then-else.

pokrycie gałęzi = odsetek gałęzi sprawdzonych przez zestaw przypadków testowych.

Z definicji widać, że gdy chodzi o pokrycie 100% to oba pojęcia są zbieżne. Przy innych wartościach pokrycia widać różnice.

Rozważmy program o następującym grafie przepływu sterowania:



Decyzje są podejmowane w blokach podstawowych mających więcej niż jeden łuk wyjściowy. W naszym przypadku są to: B2, B3 i B5. Ponieważ każdy z tych bloków ma po dwa wyjścia, więc mamy 6. decyzji do rozważania.

Rozgałęzienia są zaznaczone przez łuki w grafie przepływu sterowania, razem jest ich 10.

Rozważmy przypadek testowy, który wykonuje ścieżkę B1 → B2 → B9.

Taka ścieżka wykonuje jedną decyzję (B2 → B9) i w związku z tym mamy 1/6 = 16,7% pokrycie decyzji.

Taka ścieżka wykonuje 2 z 10 rozgałęzień, dając 20% pokrycie rozgałęzień.

Rozważmy przypadek testowy, który wykonuje ścieżkę

B1 → B2 → B3 → B4 → B8 → B2 → B3 → B5 → B6 → B8 → B2 → B3 → B5 → B7

Razem z poprzednim przypadkiem testowym mamy 100% pokrycie decyzji i rozgałęzień.

  • Odpowiedział
  • @ | 28.06.2013
  • TRENER ALTKOM AKADEMII