Fórum Root.cz
Hlavní témata => Vývoj => Téma založeno: shockwave 14. 12. 2019, 13:23:20
-
Ahoj, trošku tápu v teorii. Vím, jak provést test selháním, ale z wiki mi není jasné,
pokud vložím nesmyslná vstupní data, u kterých předpokládám, že po nich aplikaci shodím-havaruje a aplikace skutečně spadne, je pak test uspěšný nebo neuspěšný? Děkuji moc za vysvětlení , nejlépe někoho z oboru testingu.
-
Ahoj, trošku tápu v teorii. Vím, jak provést test selháním, ale z wiki mi není jasné,
pokud vložím nesmyslná vstupní data, u kterých předpokládám, že po nich aplikaci shodím-havaruje a aplikace skutečně spadne, je pak test uspěšný nebo neuspěšný? Děkuji moc za vysvětlení , nejlépe někoho z oboru testingu.
testing nedelam, testeri by meli byt radi, kdyz najdou programatorovi chybu ne?
kdyz tester nic nenajde tak je smutny ne?
predpokladam, ze tester ma programatorovi nahlasit jaky zadal vstup a spadlo to a programator to musi fixnout.
jestli se crashi rika uspesny nebo neuspesny test to nevim :-)
-
Pokud test selhání očekává, je úspěšný.
-
Vstupní data záměrně vybírám tak, aby podchytila hraniční hodnoty. Pokud má například pracovat s intervalem 0..100, tak do vstupu postupně vkládám hodnoty -1, 0, 1, 99, 100, 101. Na hodnoty -1 a 101 musí jednotka selhat - test zkontroluje, zda k selhání skutečně došlo a pokud ano, zahlásí úspěch, jinak selhání.
-
Skvělé, děkuji za jasnou odpověď. Pak už mě jen napadá, že na testy musí být jasně vymezený čas, pokud se nedaří aplikaci shodit a očekává se pád aplikace-tudíž neúspěch.
-
Skvělé, děkuji za jasnou odpověď. Pak už mě jen napadá, že na testy musí být jasně vymezený čas, pokud se nedaří aplikaci shodit a očekává se pád aplikace-tudíž neúspěch.
Zpravidla stačí počkat si na výsledek, čas není třeba specifikovat.
Proč píšeš "aplikace", když se tyto testy dělají hlavně jednotkové a integrační?
-
Skvělé, děkuji za jasnou odpověď. Pak už mě jen napadá, že na testy musí být jasně vymezený čas, pokud se nedaří aplikaci shodit a očekává se pád aplikace-tudíž neúspěch.
Ona se jaksi testuje hlavně aktuální verze na žádoucí/správné chování. Nebudu se ujišťovat, že mi známá chyba aplikaci shodí, ale účinnost opravy, tedy opak.
-
Skvělé, děkuji za jasnou odpověď. Pak už mě jen napadá, že na testy musí být jasně vymezený čas, pokud se nedaří aplikaci shodit a očekává se pád aplikace-tudíž neúspěch.
Ona se jaksi testuje hlavně aktuální verze na žádoucí/správné chování. Nebudu se ujišťovat, že mi známá chyba aplikaci shodí, ale účinnost opravy, tedy opak.
Takové testy ale nemají nic společného s vývojem řízeným testy. Je spousta druhů chyb, u kterých chceš, aby aplikace spadla, protože nesmí s tou chybou pokračovat dál.
-
Ahoj, trošku tápu v teorii. Vím, jak provést test selháním, ale z wiki mi není jasné,
pokud vložím nesmyslná vstupní data, u kterých předpokládám, že po nich aplikaci shodím-havaruje a aplikace skutečně spadne, je pak test uspěšný nebo neuspěšný? Děkuji moc za vysvětlení , nejlépe někoho z oboru testingu.
Prakticky jakýkoliv test který doběhne do konce je úspěšný. Jestli je jeho záporný výsledek úspěch pro tebe je druhá věc.
V případě testování aplikace kdy jí předhodím špatná data a ona spadne bych to viděl na "Úspěšně provedený test na neúspešné aplikaci."
Ještě nějaký problém ze školky?
-
Skvělé, děkuji za jasnou odpověď. Pak už mě jen napadá, že na testy musí být jasně vymezený čas, pokud se nedaří aplikaci shodit a očekává se pád aplikace-tudíž neúspěch.
Ona se jaksi testuje hlavně aktuální verze na žádoucí/správné chování. Nebudu se ujišťovat, že mi známá chyba aplikaci shodí, ale účinnost opravy, tedy opak.
Takové testy ale nemají nic společného s vývojem řízeným testy. Je spousta druhů chyb, u kterých chceš, aby aplikace spadla, protože nesmí s tou chybou pokračovat dál.
Podle mě je toto naopak úplně nejblíž tomu, na co se tazatel opravdu ptá.
Tzv. "failing test" napíšu tehdy, když aplikace nedělá co má, ale daný proces není pokrytý testem. Tedy se nejdříve napíše ten test (takže to je TDD), který mi ukáže, kde je chyba (selhává), a potom se opravuje aplikace. Po správné opravě test projde.