Treść książki
Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
1.WproWadzeniedoteStoWania
gointeligentnegoprogramu,topytanieTuringamożnabyprzeformułowaćnapytanie
ozgodnośćprogramuzwymaganiami.TestzaproponowanyprzezTuringa,pozwalający
odróżnićmaszynęodmyślącegoczłowieka,jestchybapierwszymwhistoriiinformatyki
przykłademformytestowaniafunkcjonalnego.WlatachpięćdziesiątychXXw.pojęcia:
sprawdzania,debugowaniaitestowaniaprogramuniebyłyjeszczejasnorozróżniane.
Fazadruga(lata1957–1978).Eradowodzeniapoprawności.W1957rokuCharles
BakerwrecenzjiksiążkiDanaMcCrackenaoprogramowaniukomputerówodróżniłde-
bugowanieodtestowania.Sprawdzanieprogramu(ang.programcheckout)miałodwa
cele:upewnićsię,żeprogramdziałaorazupewnićsię,żeprogrampoprawnierozwiązuje
postawionyprzednimproblem.Bakeruznałcelpierwszyzadomenędebugowania,acel
drugi–zadomenętestowania.Sformułowaniehupewnićsię”odnosiłosiędopostrze-
ganiatestowaniajakoprocesu,którymanaceluwykazać(udowodnić),żeprogrampo-
prawnierealizujeswojefunkcje.
Lata70.XXw.totakżeogromnyrozwójtechnik,któredziśnazywamytestowaniem
pokryciaścieżek.Nurttenwypływałzidei,abyoprogramowanietestowaćwyczerpująco
(ang0exhaustively)0
Fazatrzecia(lata1979–1982).Eradowodzenianiepoprawności.Okrestenwiążesię
zpublikacjąw1979rokuklasycznejjużksiążkiMyersa[10],zktórejpochodzidefinicja
testowaniajakohprocesuwykonywaniaprogramuzintencjąznajdowaniabłędów”.Po
razpierwszyzaczętopostrzegaćhniszczycielski”charaktertestowania.Podkreślano,że
przypadektestowymawiększąwartość,gdyjegowykonanieskutkujewykryciembłędu.
Przed1979rokiemtesterzymoglitworzyć,zupełnienieświadomie,przypadkitestowe,
którecechowałysięniskimprawdopodobieństwemwykryciabłędu.Powydaniupod-
ręcznikaMyersasytuacjadiametralniesięzmieniła:mającnauwadzewykrywaniebłę-
dówjakopodstawowyceltestowania,testerzyskupilisięnakonstruowaniuzestawów
testów(zwanychrównieżsuitamitestowymi),którebyłyzdolnedowykrywaniausterek
zdużymprawdopodobieństwem.Tenparadygmattestowaniaspowodował,żezauważo-
no,jakważnejestrozpoczynanieczynnościtestowychjużodnajwcześniejszychfazcyklu
życiaoprogramowania.Takiepodejściedotestowanianajpełniejchybauwidaczniasię
wmodeluV,któryomówimywpunkcie4.1.2.
Fazaczwarta(lata1983–1987).Eraewaluacji.W1983rokuInstituteforComputer
SciencesandTechnologyoftheNationalBureauofStandardsopublikowałdokument
zatytułowanyhGuidelineforLifecycleValidation,Verification,andTestingofComputer
Software”.Zostaławnimopisanametodologiaocenyoprogramowaniawtrakciecałego
cyklużycia.Metodologiataobejmowałaiintegrowałazesobąanalizę,przeglądyiczyn-
nościtestowe.Żywionoprzekonanie,iżprecyzyjniedobranyzbiórtechnikwalidacji,we-
ryfikacjiitestowaniapozwolinawyprodukowanieorazbezproblemoweutrzymywanie
wysokiejjakościsystemów.Pojęciawalidacjiiweryfikacjizostałypóźniejzaadaptowane
przezspołecznośćinżynierówjakościifunkcjonujądodziś.
Fazapiąta(od1988roku).Erazapobiegania.W1990rokuBeizeropublikowałksiąż-
kęhSoftwareTestingTechniques”[14],uznawanązajednąznajważniejszychwhistorii
testowaniaoprogramowania.Zawieraonawieletechnikprojektowaniatestów.Beizer
napisałwniej,żehczynnośćtworzeniatestówjestjednąznajefektywniejszychmetod
12