Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
48Rozdział2
Procesywytwarzaniaoprogramowania
funkcjonalneipozafunkcjonalne.Testowanerównieżujawniającesięwłasno-
ścisystemu.Wprzypadkudużychsystemówmożebyćtoproceswieloetapowy,
wktórymkomponentyintegrowanewceluutworzeniapodsystemó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ówwykrywanewewczesnejfaziepro-
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.Testyteopartenawymaga-
niachsformułowanychdlategoprzyrostu.Wprogramowaniusterowanymtestami,
stanowiącymnormalnączęśćprocesówzwinnych,testyopracowywanewraz
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.