Seepärast projekteeritakse iga arendusetapi käigus ka testid. Lihtsustatult võib öelda, et arendusetappidele vastavad eri tüüpi testid, tekib nn tarkvara elutsükli V-mudel. Kuna elutsüklid erinevad, erinevad ka V- mudelid. Üks levinum on järgmine: · süsteemi üldprojektile (sealhulgas tarkvara) vastab süsteemitestimine · tarkvara nõudmiste spetsifikatsioonile vastab valideerimistestimine · tarkvara realisatsiooniprojektile vastab integratsioonitestimine · tarkvara kodeerimisele vastab mooduli testimine XP (Extreme Programming) üheks eesmärgiks on suurem paindlikkus muutuvate nõuete tingimustes. XP ja testimise vahekorda võib lühidalt iseloomustada järgmiselt: · Põhimõtted: Tellija-orienteeritus, tiimitöö, V-mudel (testimine paaris arendusega), prototüüpimine, lihtsuse püüd · Testipõhine arendus (test driven development): testid luuakse enne realiseerimist kliendi
süsteemi installeerimine toimub vastavalt püstitatud nõudmistele (näiteks kas installeerimine toimub ilma probleemideta kõigil soovitud platvorimidel) 5.2 Liigitus süsteemi detailsuse järgi Süsteemitestimine testitakse kogu süsteemi vastavust talle esitatud nõuetele. Musta kasti testimise alaliik. Süsteemitestimise liigid on ka vastuvõtutestimine, alfa- ja beetatestimine, kuna nende käigus testitakse kogu süsteemi. Integratsioonitestimine testitakse erinevate komponentide liidestamist/koostööd. Kogu süsteemi valmisolek ei ole vajalik, sest on võimalik kasutada testidraivereid, mis simuleerivad puuduvate süsteemi osade käitumist (top-down ja bottom-up või sandwich meetodid). Suuremate süsteemide korral ongi otstarbekam liidestada süsteemid järk-järgult. Moodultestimine eraldiseisva tarkvaramooduli toimimise testimiseks. Mooduli iga meetodi jaoks koostatakse test, mis on eraldiseisev mooduli teistest testidest.