Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
różnicepomiędzytestamimanualnymiiautomatycznymi
Jesttooczywiściedosyćprostyprzykład,alerzeczywisteaplikacjezawierajązwykle
złożonykod,którauniemożliwiaprześledzeniewszystkichwarunków,jakiemogą
wystąpić,orazichodpowiednieobsłużeniewprzypadkutestowym.Możnapowie-
dzieć,żetelukiwprojekcieprzypadkutestowegotaknaprawdębłędamisamego
przypadkutestowego.Wprzypadkutestówautomatycznychmożemynazywaćje…
błędamiwtestach!
5.Ktośzrobiłcośzsystememprzedlubwczasietrwaniatestu,cowsposóbniezamie-
rzonywpłynęłonaprzebieglubrezultattegotestu.Tenhktoś”możebyćkolejnym
testeremmanualnym,któryuruchomiłjakieśtesty,użytkownikiemlubadministra-
torem,któryzmieniałjakieśustawienia,bądźteżinnymtestemautomatycznym,
którywykonałjakieśdziałania.Jeślinaprzykładjedentestzmieniahasłodlakonta
użytkownika,zapośrednictwemktóregodrugitestpróbujesięzalogować,wówczas
tendrugimożezakończyćsięniepowodzeniem.Kolejnymprzykłademjestsytuacja,
wktórejdwatestywykonywanejednocześnienatymsamymserwerzeikażdy
znichpróbujezmienićpewnedane,którewykorzystywaneprzeztendrugitest.
Taklasaproblemównazywanajestproblemamiizolacji(isolationproblems)ione
zbliżonedopoprzedniegorodzajuproblemów,aleprzynajmniejwprzypadkute
-
stówautomatycznychwskazująonezwyklenietylenabłądwokreślonymteście,co
raczejproblemwogólnejarchitekturzeinfrastrukturytestowania.Wrozdziałach6
i7omówionoteproblemybardziejszczegółowo.
Choćwszystkietewarunkimożemynapotkaćzarównopodczaswykonywaniatestu
manualnego,jakiuruchamianiatestuautomatycznego,tosposóbichobsługistanowiklu-
czowąróżnicęmiędzytestamimanualnymiiautomatycznymi.Ludzie(testerzymanualni)
zwyklełatworozróżniajątewarunkiiwiedzą,wjakisposóbobsłużyćkażdąznich.Nawet
wprzypadkuznalezieniabłęduwprodukcie,potymjaktesterzgłositenbłąd,wwiększo-
ściprzypadkówmożeonkontynuowaćwykonywaniepozostałejczęściprzypadkutesto-
wego,naprzykładpozastosowaniujakiegośobejścialubpoponownymwykonaniukilku
ostatnichkroków.Zdrugiejstrony,wkontekścieautomatyzacjisłowohnieoczekiwane”
oznacza,żekomputerniewie,wjakisposóbjeobsłużyć!
Ważnauwaga
Automatyzacjatestówmożedopewnegostopniaobsłużyćtrzecirodzajprzyczynniepowo-
dzeń,alejesttobardzodelikatnytemat.Jeślimożemyzidentyfikowaćpotencjalnezdarze-
nia,któremogąwystąpićpodczaswykonywaniatestu,możemybyćwstanieobsłużyćlub
obejśćjewkodziewsposób,wjakizrobiłbytoużytkownik(lubtestermanualny).Jednakże
należytegodokonywaćzrozwagą,ponieważzjednejstronycelemtychobejśćjestuczynie-
nietestówbardziejniezawodnymi,alezdrugiejstronyznacznietrudniejjestzweryfikować,
czytestsamwsobiepoprawnieobsługujewszystkietesytuacje,comożedaćefektodwrotny
odzamierzonego:testybędąmniejdeterministyczneiostateczniemniejwiarygodne!Mimo
żewniektórychprzypadkachobejściatewartezachodu,topowinniśmywziąćpoduwagę
alternatywyomawianewrozdziałach6i7.
21