Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
2.podStaWoWedefinicje
Programtenstanowiprzedmiottestów.Załóżmy,żewarunkiemtestowymjestpo-
krycieinstrukcji.Zatemelementamipokryciawszystkieliniekodu.Weźmynastępują-
cyzestawprzypadkówtestowych:
PT1:(x=4,y=4)oczekiwanewyjście:0
PT2:(x=0,y=3)
oczekiwanewyjście:6
WykonaniePT1spowodujeprzejścieprzezinstrukcje1,2,3(wlinii1.zmienna
zotrzymawartość44=0,będziespełnionywarunekinstrukcjiifwlinii2.,zatemna-
stąpiwykonanielinii3.,cobędzieskutkowaćzwróceniemwartości0izakończeniem
działaniaprogramu).WykonaniePT2spowodujeprzejścieprzezinstrukcje1,2,4,5,7,
8,9.Wsumieobaprzypadkiwykorzystałyelementypokryciaodpowiadająceliniom1,
2,3,4,5,7,8,9.Pokryływięc8spośród9elementówpokrycia,zatemstopieńpokrycia
instrukcjidlapowyższegozestawutestówwynosi8/989%.Gdybyśmychcieliosiąg-
nąćpokryciestuprocentowe,musielibyśmydodaćdozestawutestówtaki,którywymusi
przejścieprzezlinię6.Nastąpitotylkowtedy,gdywarunekwinstrukcjiifwlinii30nie
będziespełnionyijednocześniewarunekwlinii5.będziespełniony,czyligdyx+y0
orazx>y.Warunkitespełnionenp.dlawejścia(x=5,y=3)0
Należypamiętać,żepokrycieniekonieczniemusiodnosićswyłączniedoelemen-
tówstrukturalnychoprogramowania,takichjakliniekodu,decyzjewprogramieitp.Po-
kryciemożedotyczyćinnychartefaktówprocesuwytwórczego,np.wymagań,funkcjo-
nalności,przypadkówużycia,ryzyk,cechniefunkcjonalnychoprogramowania.
kryteriumpokrycia(ang0coveragecriterion)regułalubzestawregułwymuszają-
cychwykorzystanieelementówpokryciaprzezzbiórprzypadkówtestowych
kryteriazaliczeniatestu(ang0pass/failcriteria)regułydecyzyjnewykorzystywane
dookreślenia,czyobiekttestowanylubcechazaliczył(a)test[5]