Treść książki
Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
48Rozdział2
Procesywytwarzaniaoprogramowania
funkcjonalneipozafunkcjonalne.Testowanesąrównieżujawniającesięwłasno-
ścisystemu.Wprzypadkudużychsystemówmożebyćtoproceswieloetapowy,
wktórymkomponentysąintegrowanewceluutworzeniapodsystemówtesto-
wanychindywidualnie,zanimtepodsystemyzostanązesobąpołączone,aby
utworzyćfinalnysystem.
3.Testywykonywaneprzezklienta.Jesttofinalnafazaprocesutestowaniaprzedza-
akceptowaniemsystemudoużyciaeksploatacyjnego.Systemjesttestowanyprzez
klienta(lubpotencjalnegoklienta),anieprzyużyciusymulacyjnychdanychte-
stowych.Wprzypadkuoprogramowaniatworzonegonazamówienietestyklien-
tamogąujawnićbłędyipominięciawdefinicjachwymagańsystemowych,gdyż
rzeczywistedaneinaczejwpływająnadziałaniesystemuniżdanetestowe.Testy
wykonywaneprzezklientamogąrównieżujawnićproblemywymagań,gdyfunk-
cjonalnościsystemuniespełniająoczekiwańużytkownikówlubwydajnośćnie
jestakceptowalna.Wprzypadkuoprogramowanianasprzedażtestywykonywane
przezklientówpokazują,jakdobrzeprodukttenpasujedopotrzebużytkowników.
Wsytuacjiidealnejdefektykomponentówsąwykrywanewewczesnejfaziepro-
cesutestowania,problemyzinterfejsamizaśznajdujemypodczasintegrowaniasys-
temu.Jednakwmiaręwykrywaniadefektówkoniecznejestdebugowanieprogramu,
comożewymagaćpowtarzaniainnychetapówprocesutestowania.Błędywkom-
ponentachprogramumogąsięujawnićdopierowczasietestowaniasystemu.Tym
samymprocesprzebiegaiteracyjniezprzekazywanieminformacjizpóźniejszych
etapówdowcześniejszychczęściprocesu.
Testowaniekomponentówjestzazwyczajpoprostuczęściąnormalnegoprocesu
tworzenia.Programiściprzygotowująswojewłasnedanetestoweistopniowotestują
kodwtrakciejegopisania.Programistaznanapisanyprzezsiebiekomponent,atym
samymjestnajlepszymkandydatemnagenerowanieprzypadkówtestowych.
Przywykorzystywaniupodejściaprzyrostowegodowytwarzaniakażdyprzyrost
powinienzostaćprzetestowanypojegoutworzeniu.Testytesąopartenawymaga-
niachsformułowanychdlategoprzyrostu.Wprogramowaniusterowanymtestami,
stanowiącymnormalnączęśćprocesówzwinnych,testysąopracowywanewraz
zwymaganiamiprzedrozpoczęciemtworzeniakodu.Pomagatotesteromipro-
gramistomlepiejzrozumiećwymaganiaigwarantuje,żeniepojawiąsięopóźnienia
zpowodutworzeniaprzypadkówtestowych.
Gdyużywanyjestproceswytwarzaniaplanowego(np.przytworzeniusystemów
krytycznych),testowaniejestwykonywanezgodniezezbioremplanówtestów.Nie-
zależnyzespółtesterówpracujezgodnieztymiplanami,którezostałyutworzonena
podstawiespecyfikacjiiprojektusystemu.Narysunku2.7pokazanopowiązaniepla-
nówtestówzczynnościamitestowaniaitworzenia.Nazywanejesttoniekiedymode-
lemV(obróćrysunek,abyzobaczyćliteręV).ModelVpokazujeczynnościwalidacji
oprogramowaniaodpowiadająceposzczególnymfazommodelukaskadowego.
Gdysystemmabyćoferowanyjakooprogramowanienasprzedaż,częstowy-
korzystywanyjestprocestestowanianazywanytestamibeta(albobeta-testami).
Obejmujeondostarczeniesystemupewnejliczbiepotencjalnychklientów,którzy
zgadzająsięzniegokorzystać.Użytkownicycizgłaszająproblemytwórcomsystemu.