Testaus. tulosavaruus. Testaus

Koko: px
Aloita esitys sivulta:

Download "Testaus. tulosavaruus. Testaus"

Transkriptio

1 Testaus Johdanto: Mitä testaus on (ja mitä se ei ole) Testauksen ongelmia Testaustasot, V-malli Testitapausten valinta Testauksen kattavuus Työkalut Suunnittelu, seuranta ja dokumentointi Oliokeskeisyys ja testaus Kansanviisauksia Esimerkki Testaus Testing Testing is is the the process process of of exercising exercising a a program program with with the the specific specific intent intent of of finding finding errors errors prior prior to to delivery delivery to to the the end end user. user.

2 Testaus ohjelma syöteavaruus ohjelmakoodi tulosavaruus X Y sisäinen tila Johtopäätös? Syöteavaruuden koko ja mahdollisten tilojen määrä on niin valtava, ettei edes pienen ohjelman kattava testaus ei ole käytännössä mahdollista. Reaaliaikajärjestelmän tapauksessa tilanne on kertaluokkaa ongelmallisempi. Testaamalla voi siis osoittaa, että ohjelmassa on virheitä, ei sen virheettömyyttä. Testaus Testaus on systemaattista virheiden etsimistä -- ei sattumanvaraista ohjelman kokeilua. Testauksen tarkoitus on osoittaa että ohjelmassa on virheitä. Mitä enemmän virheitä löytyy, sitä onnistuneempi testi on. Virhe on ristiriita spesifikaation ja toteutuksen välillä. Virheiden jäljitys eli debuggaus ei ole testausta. Tehtäviä... Testaussuunnitelman laatiminen. Ensimmäinen versio jo määrittelyvaiheessa. Testauksen tavoitteet kussakin testissä. Testikohtaisesti testitapausten suunnittelu. Testausympäristöjen luonti. Testauksen suoritus. Tulosten tarkastelu.

3 Error, fault, failure Virhe (error, kansanomaisesti bugi) ihmisen tekemä möhläys, esimerkiksi ohjelmointivirhe tai virhe dokumentissa. ohjelmiston poikkeaminen sen spesifikaatiosta Kun virheellinen ohjelmankohta suoritetaan, se saattaa aiheuttaa vian (fault). Järjestelmä on nyt tilassa, joka ei ole sen määrittelyn mukainen. Vika puolestaan voi aiheuttaa häiriön (failure), joka on vian ilmeneminen järjestelmän ulkoisessa käyttäytymisessä. kaikki viat eivät johda virheeseen Testauksesta Virheiden määrä? hyvä ohjelmoija tuottaa noin yhden virheen / 200 riviä koodia keskikokoisessa ohjelmistossa helposti satoja virheitä! Virheen poistaminen testauksessa kuluttaa noin 12 työtuntia testaus on tehoton ja kallis tapa varmistua ohjelmiston toimivuudesta testauksella ei voida koskaan osoittaa ohjelmiston tomivuutta, vain virheellisyys Missä virheet sijaitsevat? 25% ohjelmakoodin lauseissa 22% tietorakenteissa 16% spesifikaation tulkinnassa 9% modulien integroinnissa... 8% spesifikaatioissa

4 Testauksen ongelmia Asenne: testauksella yritetään osoittaa ohjelman toimivuus, ei toimimattomuus. Testauksen aliarvostus: "ne jotka eivät muuta osaa, testaavat". Milloin testaus voidaan lopettaa: kun rahat/aika loppuu? Onko kaikki testattu? Mihin tehdyt korjaukset vaikuttavat? Testien toistaminen korjausten jälkeen (regressiotestauksen työmäärä). Testin toistettavuus (ajastukset ja muut hallitsemattomat ilmiöt), esimerkkejä: osoittimien käyttö (yllättävän usein) reaaliaikajärjestelmä, hajautettu järjestelmä ja graafinen käyttöliittymä....testauksen ongelmia Moduulitestauksessa testausympäristö. Testaustyökalujen vaikutus järjestelmän toimintaan. Järjestelmä on maantieteellisesti laaja (hajautettu). Poikkeamien havaitseminen on vaikeaa (esimerkiksi niiden pienuuden takia) Ei tiedetä, mikä oikean tuloksen pitäisi olla. Tilanteet, jota ei voida testitilanteessa järjestää (ohjelmistoissa on lähes aina tällaisia osia). Tulosten toteaminen oikeaksi, kun järjestelmän toimintaa ei voida seurata ulkopuolelta.

5 Testauksen V-Malli Määrittely Arkkitehtuurisuunnittelu Moduulisuunnittelu Testauksen suunnittelu ja tulosten verifiointi Moduulitestaus Integrointitestaus Järjestelmätestaus Ohjelmointi V-malli yksikkötestaus, modulitestaus (unit testing) testataan jokainen komponentti (moduli, luokka,...) spesifikaatiotaan vastaan (jos sellainen on tehty) yleensä white box testausta integrointitestaus (integration test) komponenttien yhteistoiminta validointitestaus (validation testing) ohjelmiston vastaavus vaatimusmäärittelyyn pääsääntöisesti järjestelmätestaus (system testing) koko järjestelmän testaus asennettuna laitteistot mukana black box V-malli kytkee rakennus ja testausvaiheen toisiinsa, testaussuunnitelma laaditaan testausvaihetta vastaavassa rakentamisvaiheessa käytännössä useita pieniä V-malleja iteratiivisen vaiheistuksen sisällä

6 V-malli Moduulitestauksessa testausympäristö. Testaustyökalujen vaikutus järjestelmän toimintaan. Järjestelmä on maantieteellisesti laaja (hajautettu). Poikkeamien havaitseminen on vaikeaa (esimerkiksi niiden pienuuden takia) Ei tiedetä, mikä oikean tuloksen pitäisi olla. Tilanteet, jota ei voida testitilanteessa järjestää (ohjelmistoissa on lähes aina tällaisia osia). Tulosten toteaminen oikeaksi, kun järjestelmän toimintaa ei voida seurata ulkopuolelta. Moduulitestaus Testattava moduli Testitulokset Ohjelmistosuunnittelija (yleensä) Testitapaukset (testcase) Moduulitestaus (module testing, unit testing) varmistaa, että yksittäiset moduulit toimivat määrittelynsä mukaisesti irrallisena kokonaisuutena. esim. toimivatko paikalliset tietorakenteet Ohjelmoija tekee yleensä itse, tosin korkeaa virheettömyyttä vaativissa sovelluksissa käytetään ulkopuolista testaajaa.

7 Moduulitestausympäristö Ajuri Moduli rajapinta lokaalit tietorakenteet rajatapaukset suorituspolut virheelliset syötteet Tynkä Tynkä Testitapaukset RESULTS Testiajuri (driver) ajaa testitapauksia Puuttuvat testattavan modulin tarvitsemat modulit korvataan tynkämoduleilla (stub) Integrointitestaus Integrointitestaus testaa moduulien välisiä liittymiä. toimiiko tiedonvälitys rajapinnoissa toimiiko modulien kytkentä (ajoitukset realiaikajärjestelmissä) kokonaisuutta tekeekö modulijoukko kokonaisuutena mitä pitää testaus tehdään teknistä määrittelyä vastaan mitä aiemmin aloitetaan, sitä aiemmin nähdään ongelmia arkkitehtuurissa Testaus etenee usein rinnan moduulitestauksen kanssa joko kokoavasti (bottom up) tai jäsentävästi (top down). Jäsentävässä integroinnissa joudutaan rakentamaan kutsuttavia funktioita varten tynkämoduuleita (test stubs). Kokoavassa vaihtoehdossa tarvitaan usein testipetejä (test bed, test driver). Reaaliaikajärjestelmän ohjelma koostuu tavallisesti useista tehtävistä (task, multitasking) => myös tynkäprosessien käyttö on usein hyvä idea. Kaksi perusstrategiaa Inkrementaalinen "Big bang" on yleensä ongelmallinen

8 Inkrementaalinen integrointitestaus A T1 A T1 A T1 T2 B T2 T2 B T3 B T3 C T3 T4 C T4 D T5 Test sequence 1 Test sequence 2 Test sequence 3 Integrointitestaus top down A Ylin moduli testataan tynkien avulla B F G Tynkämodulit korvataan oikeilla yksi kerrallaan C D E Lisättäessä uusia moduleita, Aikaisemmat testit ajetaan uudelleen (ainakin osa) Tynkämoduleilla on sama rajapinta kuin varsinaisella, mutta rajallinen funktionaalisuus

9 Integrointitestaus bottom up A B F G C Testiajurit korvataan testatuilla klustereilla Yksi kerrallaan Moduleista kootaan klustereita D E cluster modulit implementoidaan ja testataan aloittaen hierarkian alaosasta moduleista kootaan klustereita (tyypillisesti jonkin toiminnon toteuttavia) integraatiotestauksessa koko järjestelmä näkyy testiajurina Integrointitestaus testauksen eteneminen Level 1 Testing Level 1 sequence... Level 2 Level 2 Level 2 Level 2 Level 2 stubs top down bottom up Level 3 stubs T est d ri vers Lev el N L evel N L e vel N Lev el N Lev e l N Testin g s eq uen ce T est d ri v ers Lev el N 1 L ev el N 1 Lev el N 1

10 Integrointitestaus Suurin ongelma integrointitestauksessa on löytyneiden virheiden lokalisointi - mistä anomalia testin tulosteessa johtuu? interaktiot modulien välillä ovat kompleksisia, käyttääkö joku moduli toisen rajapintaa väärin? onko kyseessä modulin sisäinen virhe jota ei löydetty modulitestauksessa? Virheen lokalisointia helpottaa inkrementaalinen integraatio ja testaus sopimuspohjainen ohjelmointi (onko vika kutsujassa vai kutsuttavassa) realiteetteja järjestelmän ominaisuuksien implementaatio saattaa jakaantua usealle modulille, jollon integroinnin inkrementti on iso virheitä saattaa löytyä uuden modulin lisäyksen seurauksena jo integroiduista ja testatuista osista järjestelmää rajapintavirheiden korjaus vaatii usein koko integraatiotestauksen uudelleensuorittamista koska rajapintaa käyttävät muutkin kuin s e moduli jonka yhteydessä virhe tuli esille Top-down vs. bottom up vertailukriteerejä Arkkitehtuurin testaus top-down löytää todennäköisemmin virheitä arkkitehtuurista aikaisessa vaiheessa bottom-up testing ei vaadi arkkitehtuurin kiinnittämistä XP-tyyppinen ohjelmistoprosessi mahdollinen Järjestelmän toiminta top-down antaa toimivan tynkä järjestelmän heti alussa demonstraatio (feasibility), protoilu, psykologinen motivaattori validointitestaus voi alkaa ennen kuin koko integraatio on tehty Testien toteuttaminen top-down vaatii tynkämodulien toteuttamisen, mikä saattaa olla työlästä bottom-up vaatii ajurien toteutuksen, usein helpompaa Tulosten kerääminen top-down rakentamisessa yleensä ylimmät (kontrolli-) tasot eivät tuota mitään näkyvää tulostetta pitää toteuttaa ylimääräisiä toimintoja raportoimaan mitä järjestelm ässä tapahtuu bottom-up vaatii usein ajureihin testattavien modulien toimintaa tarkkailevia ja tuloksia kerääviä osia. Käytännössä käytetään melkein aina yhdistelmää molemmista strategioista

11 Järjestelmätestaus Järjestelmätestauksessa varmistetaan, että järjestelmä toimii määrittelynsä mukaisesti (ja käyttöohjeensa). Testauksen voi suorittaa ulkopuolinen ryhmä (suositeltavaa) Virheiden korjaus kallista. testataan ei toiminnalliset ominaisuudet: luotettavuus-, toipumis-, turvallisuus- ja kuormitustestit (vasteajat, volyymit). Yhteensopivuus muiden järjestelmien kanssa. Muita testauksen muotoja kenttätestaus hyväksymistestaus alfatestaus betatestaus regressiotestaus release testing käytettävyystestaus suorituskykytestaus...

12 Testitapausten valinta Testidata syöte ohjelmalle testaustarkoitukseen Testitapaus (test case) testidata testausjärjestelmään ja sitä vastaava spesifikaatioiden perusteella tehty ennustus suorituksen tuloksesta mikäli ohjelmisto toimii oikein Perusstrategioita testitapausten valintaan Lasilaatikkotestaus, rakenteellinen-, sisäinen testaus (white-box testaus, classbox testing) ohjelman rakenne (koodi) tunnetaan polkutestaus (paht testing): testitapaukset valitaan siten että mahdolliset suorituspolut koodissa tulevat kattavasti läpikäytyä täysi kattavuus ei ole mahdollista Harmaalaatikkotestaus tunnetaan ohjelman toteutusperiaatteita joita käytetään hyväksi testitapausten valinnassa Testitapausten valinta Mustalaatikkotestaus, toiminnallinen-, ulkoinen testaus (Black-box testaus, functional testing) testaus perustuu ohjelman ulkoisesti havaittavaan toimintaan testitapaukset valitaan spesifikaatioiden perusteella, ohjelmasta ei tiedetä mitään (musta laatikko) syöte suoritus tulos ok? avainkysymys on testitapausten valinta siten että virheiden löytyminen on todennäköistä ekvivalenssi-ositus ek vivalenssiositus: jaetaan syötteet (ja tulosteet) ekvivalenssiluokkiin, mikä tahansa arvo luokassa edustaa koko luokkaa. Valitaan joka luokasta yksi arvo. raja-arvoanalyysi: Valitaan ekvivalenssiluokista rajatapaukset. voidaan soveltaa sekä syöteavaruuteen että tulosavaruuteen. Virheenarvaus (tarkastuslista tavallisimmista virheistä).

13 Testauksen kattavuus white box Valittu polku 14 Tällä modulilla on 10 erilaista Suorituspolkua! loop < 20 X Käytetään kontrolloitua polkutestausta, pyritään kattavuuteen muilla määritelmillä loop < 20 X Polkutestaus - testauksen riittävyys kattavuusmitoilla Polkutestauksessa testitapaukset valitaan siten että tietty kattavuuskriteeri saadaan täyttymään testauspolitiikka määrää kattavuuden Kattavuusmittoja polkutestaukselle Lausekattavuus: Int palkka 100% => jokainen lause suoritetaan vähintään kerran. if ehto {... Palkka=123...} Heikkoudet return Palkka Ei ota huomioon haarautumisia kontrollirakenteissa joten paljon jää suorittamatta ei ota huomioon modulin sisäisen tilan vaikutusta lauseen suoritukseen

14 Testauksen riittävyys kattavuusmitoilla Päätöskattavuus (haarakattavuus, decision coverage): jokainen ehtolauseke saa vähintään kerran molemmat arvonsa (T/F), ts. ehdollisen rakenteen molemmat haarat suoritetaan. McCaben kompleksisuusmitta antaa testiajojen vähimmäismäärän Yleisesti vaadittava minimikattavuus Heikkous: ehtojen kaikkia osia, saatikka sitten kombinaatioita ei testata If (palkka>1000) orf (ylitoita andf paivitaylityot()>1000) {...} else {...} Testiaineistot: palkka=1234 (ehtolauseke tosi) ja palkka=0, ylitoita=epätosi (ehtolauseke epätosi) (orf = &&, andf = ) Testauksen riittävyys kattavuusmitoilla Ehtokattavuus (condition coverage): jokainen ehtolausekkeen osa (or/and-yhdistämä) saa vähintään kerran molemmat arvonsa (T/F). Ei impilikoi välttämättä päätöskattavuutta: If (palkka>1000) and (ylitoita) {...} else {...} Testiaineistot: palkka=1234 ja ylitoita=epätosi (ehtolauseke epätosi) ja palkka=0, ylitoita=tosi (ehtolauseke epätosi) (huom : and on tässä normaali and-operaatio, ei c-tyylinen oikoevaluointi) Vaatimalla sekä päätös/ehtokattavuus korjataan yo. ongelman.

15 Testauksen riittävyys kattavuusmitoilla Moniehtokattavuus (multiple condition coverage): jokainen päätös evaluoidaan vähintään kerran kaikilla mahdollisilla ehtojen totuusarvojen yhdistelmillä. If (palkka>1000) orf (ylitoita andf paivitaylityot()>1000) {...} else {...} palkka>0 T F F F ylitoita - F T T paivitaylityot()> T F Päätös/moniehtokattavuus vaatii lisäksi päätöskattavuuden. Testauksen riittävyys kattavuusmitoilla Polkukattavuus: kaikki suorituspolut (lukukumäärä, silmukoiden käsittely). Montako polkua? i=0 while i<20 loop if ehto1 then if ehto2 then L1 else L2; else if ehto3 then L3 else L4; end while Funktiokattavuus: onko rajapinnan kaikkia funktioita testattu. Kutsukattavuus: onko kaikki funktiokutsut suoritettu. Silmukkakattavuus: silmukat suoritettu 0, 1 ja monta kertaa. Tilakattavuus: kaikki tilat&tilasiirtymät Poikkeuskattavuus...

16 Kattavuusmitat käytännössä Kannattaa mitata: tarkoituksena on löytää puutteita testiaineistossa, ei niinkään todistaa testauksen perusteellisuutta. Prosenttilukujen tulkinnassa kannattaa olla varovainen suuri kattavuus ei välttämättä tarkoita hyvää testausta mitat eivät välttämättä ole keskenään vertailukelpoisia 100% kattavuus käytännössä usein mahdottomuus Yleensä tavoitteena esimerkiksi 85% kattavuus (lause- tai päätöskattavuus) Kattavasti testattu ei ole kattavasti testattu. Kattavuus ei ota huomioon olion tilaa. Milloin testattu riittävästi?

17 Milloin testattu riittävästi? Mutkikkuusmitat: Voidaan arvioida mm. koodin laatua (esimerkiksi alihankinnat), ohjelman "rispaantumista" ylläpidossa ja testauksen vaativuutta. Halsteadin mitta: lähinnä historiallista merkitystä McCaben syklomaattinen numero G on ohjelman kontrolliverkko ja c päätösten määrä Ohjelman syklomaattinen numero v(g) = c+1 Virheiden kylväminen Ohjelmassa X virhettä (X tuntematon). Kylvetään N virhettä. Testauksessa löytyy X' oikeaa virhettä ja N' kylvettyä virhettä. Oletetaan, että X'/X = N'/N. Siis ohjelmassa on yhteensä X = X'N/N' virhettä, joista vielä X-X' kpl on löytämättä. sovellettavissa myös tarkastusmenettelyyn Black Box - Testauksen kattavuus (toiminnallinen testaus) Testattavan syöteavaruuden kattaminen on mahdotonta Arvoaluetestaus (domain testing) Arvoalue syntyy syötemuuttujan tyypistä sekä spesifikaatiossa määritellyistä rajoista, modulin käyttörajapinnan esiehdoista Esim. kokonaislukusyöte x, sallitut arvot x? [0, 200] Valitaan testitapauksiin Tapaus arvoalueen sisältä Arvoalueen rajat Tapaukset heti arvoalueiden ulkopuolelta Esimerkissä testitapauksiksi tulisivat arvot 50, 0, 200, -1, 201 Ekvivalennsitestaus Arvoalueet jaetaan ekvivalenssiluokkiin joille on voimassa Jokainen ekvivalenssiluokan arvo antaa saman testituloksen (toimii oikein tai ei) Käytännössä: paljastaa virheen samalla todennäköisyydellä Testitapauksia valitaan yksi jokaisesta ekvivalenssiluokasta Ekvivalenssiluokan rajat valitaan myös testitapauksiksi

18 Black Box - Testauksen kattavuus Ekvivalenssiluokkien määrittely Aiempi arvoalueen jakaminen: arvoalueen sisältä ja ulkoa Syötteet ovat jollain perusteella samaan luokkaan kuuluvia Tulosteet ovat jollain perusteella samaan luokkaan kuuluvia Luokittelu sellaisten ominaisuuksien mukaan jotka todennäköisimmin aiheuttavat virheitä Modulin (julkisesta) määrittelystä Syötteet jotka ovat esiehdon mukaisia Syötteet jotka eivät ole esiehdon mukaisia Syötemuuttujien rakenteesta Esim. vektorista tyhjä vektori, yksialkioinen, monialkioinen, järjestetty, Black Box testitapausten valinta esimerkki: binäärihaku procedure Search (Key : ELEM ; T: ELEM_ARRAY; Found : in out BOOLEAN; L: in out ELEM_INDEX) ; Pre-condition -- the array has at least one element T FIRST <= T LAST Post-condition -- the element is found and is referenced by L ( Found and T (L) = Key) or -- the element is not in the array ( not Found and not (exists i, T FIRST >= i <= T LAST, T (i) = Key ))

19 Esimerkki jatkuu syötteen ekvivalenssipartitiot 1) Esiehdot täyttyvät, etsitty arvo taulukossa 2) Esiehdot täyttyvät, etsitty arvo ei taulukossa 3) Esiehdot eivät täyty, etsitty arvo taulukossa 4) Esiehdot eivät täyty, etsitty arvo ei taulukossa 5) Taulukossa vain yksi alkio 6) Taulukossa parillinen määrä alkioita 7) Taulukossa pariton määrä alkioita 8) Etsitty arvo taulukossa ensimmäisenä, viimeisenä 9)... Kohdat 5-9 voidaan lukea myös rakenteelliseen testaukseen, sillä näiden ekvivalenssiluokkien perusteet löytyvät koodista Syötteen ekvivalenssipartitiot ja testitapaukset Array Single value Single value More than 1 value More than 1 value More than 1 value More than 1 value Element In sequence Not in sequence First ele ment in sequence Last element in sequence Middle element in sequence Not in sequence Inp ut sequ ence (T) Key (Key) Output (Found, L) true, false,?? 17, 29, 21, true, 1 41, 18, 9, 31, 30, 16, true, 7 17, 18, 21, 23, 29, 41, true, 4 21, 23, 29, 33, false,??

20 Testaustyökalut Testikattavuusanalysaattorit Purify, Bounds Checker: osoitinongelmat, muistivuodot Profilointiohjelmat Vertailuohjelmat Testipetigeneraattorit, testiskriptit Emulaattorit, simulaattorit Nauhoitustyökalut, kuormageneraattorit Testauksen automatisointi? Testausympäristö, testipenkki testidatan generaattori spesifikaatio lähde koodi testipeti testidata oraakkeli profiloija testattava ohjelma testi tulokset testi ennusteet suoritus raportti simulaattori vertaaja raportti generaattori Testin tulosraportti

21 Testausprosessi Määrittelydokumentaatio Kokemus, tarkastuslistat Suunnitteludokumentaatio Laatujärjestelmän ohjeistus Vanha testaussuunnitelma Testauksen suunnitelu Testisuunnitelma Testaus Testiraportit Testauksen suunnittelu Projektisuunnitelma: mitä dokumentteja tuotetaan, kuka tuottaa ja milloin Sopimus ja/tai sen liitteet: Hyväksymiskoesuunnitelma joka kuvaa hyväksymiskriteerit, joita asiakas testaa hyväksymistestissä. Testauksesta saattaa olla hyvä tuottaa erillinen yleissuunnitelma: kuka vastaa ja mistä (mm. testiympäristöjen pystyttäminen jne.). Järjestelmätestaussuunnitelma: määrittelydokumentissa tai erillisenä dokumenttina. Integrointitestaussuunnitelma: suunnitteludokumentissa tai erillisenä dokumenttina. Moduulitestaus: Kunkin moduulin määrittelyyn liittyy testiympäristön määrittely ja testitapausten määrittely. Voi olla yleisohje, ei välttämättä erillistä suunnitelmaa

22 Testaussuunnitelma 1. Johdanto. 2. Testauksen kohde ja tavoitteet. 3. Testausympäristö. 4. Testauksen organisointi ja raportointi. 5. Testausstrategia ja integrointisuunnitelma. 6. Testattavat toiminnot. 7. Toimintojen testitapaukset, hyväksymiskriteerit. 8. Ei-toiminnallisten ominaisuuksien testaus. 9. Erikoistilanteet. 10. Ominaisuudet, joita ei testata. 11. Testauksen lopettamiskriteeri Seuranta Testeistä syntyy testiraportteja poislukien modulitestaus Asiakasreklamaatiot dokumentoitava. Laatujärjestelmän kehittämiseksi virheet on analysoitava ja tilastoitava virheiden löytymis-, syntymis- ja korjausajankohdat, testauksen kattavuusmitat, virheiden luokittelu (mild, moderate, annoying, disturbing, serious, very seriuos, extreme, intolerable, catastrophic, infectious) testauksen riittävyyttä voidaan parhaiten arvioida kokemukseen nojautuen

23 Oliokeskeisyyden vaikutus testaukseen Suurin vaikutus moduli- ja integraatiotestaus vaikea erottaa toisistaan Olioparadigmassa käytetään usein inkrementaalisia prosessia Ei eroja järjestelmätestaustasolla (?) Top-Down? Onko Top tasoa olemassa? Bottom-up? Onko edes hierarkiaa olemassa? Klusteritestaus! Alemmilla testaustasoilla lisäongelmia aiheuttavat periytyminen ja dynaaminen sitominen. Kun jotain on peritty, onko se testattava uudelleen? Vastaus näyttäisi (ikävä kyllä) olevan myönteinen. Vain hyvin yksinkertaisten funktioiden tapauksessa voi olla varma, että kantaluokalle tehty testaus riittää. Jos perityssä funktiossa käytetään dynaamista sitomista, ei voida olla varmoja funktion toimivuudesta uudessa ympäristössä. Kattavuus? Kaikki dynaamista sitomista sisältävät pitää testata päätöskattavasti (kutsukohtahan on tavallaan ehdollinen haarautuminen olion tyypin perusteella). OO testaus Luokan testaus vastaa modulitestausta Integrointitestauksessa kolme strategiaa Integroitavat ja testattavat klusterit pitää löytää jollakin tavalla sillä selvää hierarkiaa ei ole. Kolme tapaa Use-case testing (tai skenaariotestaus) Integroitavat ja testattavat klusterit muodostetaan suoraan käyttötapauksista Thread testing Integroidaan ja testataan tapahtumia (event) vastaan luokat jotka suorittuvat yhdessä säikeessä Klusteri testaus Ideana testata modulien (luokkien) klustereita jotka yhdessä aikaansaavat jotkut tietyt palvelut (one collaboration)

24 OO testaus Testaustasot Olioiden operaatioiden testaus (vastaa jotakuinkin funktion whitebox testausta) Luokkien testaus Kattavuusmitat? Kaikki operaatiot Kaikkien attribuuttien arvon asetus ja luku Kaikkien olion mahdollisten tilojen läpikäynti Yhteistyöklustereiden testaus (black box) Koko järjestelmän testaus (ei oo-erityispiirteitä) Luokkatestaus (esimerkki) WeatherStation identifier reportweather () calibrate (instruments) test () startup (instruments) shutdown (instruments) Test cases are needed for all operations Use a state model to identify state transitions for testing Examples of testing sequences Shutdown? Waiting? Shutdown Waiting? Calibrating? Testing? Transmitting? Waiting Waiting? Collecting? Waiting? Summarising? Transmitting? Waiting

25 Integrointitestaus (Skenaario perustainen esimerkki) :CommsController request (report) acknowledge () report () :WeatherStation summarise () :WeatherData send (report) reply (report) acknowledge () Thread of methods executed CommsController:request? WeatherStation:report? WeatherData:summarise Inputs and outputs needed for the test Input of report request with associated acknowledge and a final output of a report Can be tested by creating raw data and ensuring that it is summarised properly Use the same raw data to test the WeatherData object Interface testing (~rajapintatestaus) Osa integrointitestausta testataan integroitavien modulien, luokkien tai alijärjestelmien rajapintojen yhteensopivuus pyritään havaitsemaan virheitä joko rajapintojen toteutuksessa tai väärissä oletuksissa ja tulkinnoissa Erityisen tärkeä oliosuuntautuneissa järjestelmissä, modulit määritellään rajapintojensa kautta Test cases A B C

26 Interface testing rajapinta- ja virhetyyppejä Parametrirajapinta normaali datan välitys modulista toiseen Jaettuun muistiin perustuva rajapinta Metodi-rajapinta Tavallinen olion (tai ADT:n) julkinen rajapinta Viestivälitykseen perustuva rajapinta Palvelupyyntö viestinä, tulokset paluuviestinä Jotkut oliojärjestelmät, client-server arkkitehtuurit Väärin käytetty rajapinta kutsuva komponentti käyttää rajapintaa väärin Väärin ymmärretty rajapinta kutsuja olettaa rajapinnan palveluista jotain mikä ei pidä paikkansa Ajoitusvirheet kutsuja ja kutsuttava toimivat eri nopeuksilla, tarjolla oleva informaatio on vanhentunutta (esimerkiksi) Interface testing suunnittelun ohjeita Käytä testejä jotka aiheuttavat kutsuissa parametreille arvoja arvoalueen rajoilta Jos rajapinnassa välitetään osoittimia, testaa aina null-osoitin. Käytä testejä jotka aiheuttavat varmasti epäonnistumisen. Poikkeustilanteiden käsittely on yleisin rajapinnoissa väärin tulkittu alue. Viestinvälitykseen perustuvat rajapinnat on testattava suurilla volyymeillä, stress testing. Lisäät todennäköisyyttä löytää ajoitusvirheitä. Jaettuun muistiin perustuvissa rajapinnoissa, rajapintaa käyttävien modulien aktivointijärjestystä pitää vaihdella.

27 Kansanviisauksia Testauksen suorittaa joku muu kuin tekijä. Teoksessa [Kit 1995] on esitetty otsakkeen The Six Essentials of Software Testing alla seuraavat perusperiaatteet. The quality of the test process determines the success of the test effort. Prevent defect migration by using early life-cycle testing techniques. The time for software testing tools is now. A real person must take responsibility for improving the testing process. Testing is a professional discipline requiring trained, skilled people. Cultivate a positive team attitude of creative destruction. Tuotekehitysprojektissa järjestelmätestauksen loppuvaihe kestää pitempään, kuin osaat kuvitella edes pahimmissa painajaisunissasi. Kokeile, mutta älä luule, että se on testausta, suunnitelmallisuus on valttia. Test now or pay later; the later you find it, the more you pay.... kansanviisauksia A good test can never save a bad program. Älä poista testauspiirteitä ohjelmasta. Suorita "apinatestejä, ota pistoke irti seinästä. Tee/testaa muutokset ja lisäykset riittävän pieninä annoksina. Virheet kasaantuvat: jos jostain on löytynyt useita virheitä, lähistöllä on niitä vielä lisää. Dynaamisen muistin määrän kehityksestä kannattaa pitää kirjaa (roskaantuminen, satunnaiset kuormitushuiput). Tarkasta vielä kerran laskennan virhetilanteet: nollalla jako, yli/alivuodot sekä liukulukujen pyöristys. Tee myös testipetit kunnolla, suurin osa ajasta kuluu muuten virheiden hakuun testipeteistä. Jos poikkeustilanteita käsittelevää koodia on vähän, kaikkia poikkeustilanteita ei ole vielä otettu huomioon.

28 Reaaliaikajärjestelmien testauksen kansanviisaudet Motto: sulautetun ohjelmiston testaus alkaa siitä, mihin tavallisen ohjelmiston testaus loppuu. Testattavuus on otettava jo suunniteltaessa huomioon ja ohjelmoitava järjestelmään mukaan. Tuotantoversiossakin voi olla testauspiirteitä, jotka saa tarvittaessa kytkettyä toimintaan. Ensin sarjallisesti mahdollisimman perusteellisesti. Mahdollisimman pitkään kehityslaitteistossa ja sitten simulaattoreita ja emulaattoreita hyväksikäyttäen. Kriittiset osat on katselmoitava huolellisesti ja mahdollisesti todistettava oikeiksi (tai edes perusteltava vakuuttavasti, miksi kuviteltu riski ei pääse toteutumaan). Seuraa CPU:n käyttöastetta varsinkin muutosten jälkeen. Seurannan voi toteuttaa joko kellokeskeytyskäsittelijässä tai matalimman prioriteetin taustaprosessina. Kerää tilastoa poikkeustapauksista: menetetyt kellokeskeytykset ja oheislaitteiden ohjauksessa sekä tiedon siirrossa tapahtuneet virheet. Seinäkelloa voi tarpeen mukaan nopeuttaa tai hidastaa. Nopeuttamalla kelloa saadaan esimerkiksi koko vuosi nopeasti testattua. Tärkein asia viimeiseksi Automatisoi Testing is the testaus process mahdollisimman of exercising pitkälle a program with the specific intent of finding Automatisoitu errors prior to testaus delivery on to kääntäjän the end user. laajennos joka tarkistaa ohjelmistosi semantiikan!

Laadunvarmistustekniikat

Laadunvarmistustekniikat Laadunvarmistustekniikat Ohjelmistojen laadunvarmistustekniikoita: testaus (testing) ohjelman suorittamista tarkoituksena löytää virheitä tarkastukset (inspections, reviews) asiantuntijoiden suorittamia

Lisätiedot

Testaus käsite. Sekalaista testausasiaa. Testauksen käsitteestä. Kattavuusmitat. Jos ajatellaan, että testaus = V&V, voidaan erottaa:

Testaus käsite. Sekalaista testausasiaa. Testauksen käsitteestä. Kattavuusmitat. Jos ajatellaan, että testaus = V&V, voidaan erottaa: Testaus käsite Sekalaista asiaa Sami Kollanus 15.11.2006 Jos ajatellaan, että = V&V, voidaan erottaa: Staattinen Dynaaminen Toisaalta voidaan määritellä Myersin (1979) mukaan: Testaus on ohjelman suoritusta,

Lisätiedot

Kontrollipolkujen määrä

Kontrollipolkujen määrä Testaus Yleistä Testaus on suunnitelmallista virheiden etsimistä Tuotantoprosessissa ohjelmaan jää aina virheitä, käytettävistä menetelmistä huolimatta Hyvät menetelmät, kuten katselmoinnit pienentävät

Lisätiedot

Ohjelmiston testaus ja laatu. Testaustasot

Ohjelmiston testaus ja laatu. Testaustasot Ohjelmiston testaus ja laatu Testaustasot Testauksen vaihejako Tarpeet / sopimus Järjestelmätestaus Hyväksymiskoe Määrittely testauksen suunnittelu ja tulosten verifiointi Arkkitehtuurisuunnittelu Moduulisuunnittelu

Lisätiedot

Ohjelmiston testaus ja laatu. Testausmenetelmiä

Ohjelmiston testaus ja laatu. Testausmenetelmiä Ohjelmiston testaus ja laatu Testausmenetelmiä Testausmenetelmiä - 1 Testauksen menetelmien päälähestymistapoina ovat black-box testi testaaja ei voi tutkia lähdekoodia testaus perustuu sovellukselle suunnitteluvaiheessa

Lisätiedot

Testausdokumentti. Kivireki. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Testausdokumentti. Kivireki. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testausdokumentti Kivireki Helsinki 17.12.2007 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Anu Kontio Ilmari

Lisätiedot

Verifioinnin ja validoinnin ero. 7. Verifiointi ja validointi. Verifiointi- ja validointitekniikat. Verifiointi- ja validointitekniikat II

Verifioinnin ja validoinnin ero. 7. Verifiointi ja validointi. Verifiointi- ja validointitekniikat. Verifiointi- ja validointitekniikat II 7. Verifiointi ja validointi Verifiointi ja validointi (V&V) on ohjelmistotuotannon työvaihe, missä varmistetaan, että ohjelmisto täyttää sille asetetut implisiittiset ja eksplisiittiset vaatimukset ja

Lisätiedot

Testaus elinkaaressa. Testaustasot ja vaiheet

Testaus elinkaaressa. Testaustasot ja vaiheet Testaus elinkaaressa Testaus kehittämisen tukena Yksikkötestaus Integrointitestaus Testaustasot ja vaiheet Testaustaso = tietyn testauksen kohteen ja tavoitteen mukainen testaus joka jatkuu koko ajan tai

Lisätiedot

Dynaaminen analyysi I

Dynaaminen analyysi I Dynaaminen analyysi I Luento 6 Antti-Pekka Tuovinen 4 April 2013 1 Tavoitteet Testitapausten suunnittelun ja suorituksen perusteet Black-Box testitapausten suunnittelu Ekvivalenssiluokat Raja-arvo (reuna-arvo)

Lisätiedot

Testaaminen ohjelmiston kehitysprosessin aikana

Testaaminen ohjelmiston kehitysprosessin aikana Testaaminen ohjelmiston kehitysprosessin aikana 04.02.2004 http://cs.joensuu.fi/tsoft/ Sisällys 1. Johdanto 2. Yksikkö- ja integrointitestaus 3. Järjestelmätestaus 4. Hyväksymistestaus http://cs.joensuu.fi/tsoft/

Lisätiedot

Testaussuunnitelma PULSU. Syksy 2008 Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Testaussuunnitelma PULSU. Syksy 2008 Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testaussuunnitelma PULSU Syksy 2008 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (9 op) Projektiryhmä Heikki Manninen Noora Joensuu

Lisätiedot

Dynaaminen analyysi III

Dynaaminen analyysi III Dynaaminen analyysi III Luento 8 Antti-Pekka Tuovinen 16 April 2013 1 Tavoitteet White box testitapausten suunnittelutekniikat Lausekattavuus Haarautumakattavuus Ehto- ja polkukattavuus Huomioita white

Lisätiedot

Laadunvarmistustekniikoita. Ohjelmistotuotanto. Testaus termejä. Testaus periaatteita. Testaus havaintoja. Testaus havaintoja

Laadunvarmistustekniikoita. Ohjelmistotuotanto. Testaus termejä. Testaus periaatteita. Testaus havaintoja. Testaus havaintoja Laadunvarmistustekniikoita Ohjelmistotuotanto Ohjelmistojen testaus 1 Testaus (testing) ohjelman suorittamista tarkoituksena löytää virheitä Tarkastukset, katselmukset (inspections, reviews) asiantuntijoiden

Lisätiedot

Convergence of messaging

Convergence of messaging Convergence of messaging Testaussuunnitelma The Converge Group: Mikko Hiipakka Anssi Johansson Joni Karppinen Olli Pettay Timo Ranta-Ojala Tea Silander Helsinki 20. joulukuuta 2002 HELSINGIN YLIOPISTO

Lisätiedot

Ohjelmistotuotantoprojekti

Ohjelmistotuotantoprojekti Ohjelmistotuotantoprojekti Ryhmä Muppett TESTAUSDOKUMENTTI Helsinki 5.8.2008 HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Ohjelmistotuotantoprojekti, kesä 2008 Projekti: Muutos- ja korjauspyyntöjen

Lisätiedot

Testaustyökalut. Luento 11 Antti-Pekka Tuovinen. Faculty of Science Department of Computer Science

Testaustyökalut. Luento 11 Antti-Pekka Tuovinen. Faculty of Science Department of Computer Science Testaustyökalut Luento 11 Antti-Pekka Tuovinen 25 April 2013 1 Tavoitteet Työkalutyyppejä Testauksen hallinta Testien määrittely Staattinen analyysi Dynaaminen testaus 25 April 2013 2 1 Työkalut ja testaus

Lisätiedot

Testaussuunnitelma Labra

Testaussuunnitelma Labra Testaussuunnitelma Labra Helsinki 25.8.2008 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos 1 Kurssi 581260 Ohjelmistotuotantoprojekti (9+1op) Projektiryhmä Anssi Kapanen,

Lisätiedot

Ohjelmistotuotanto vs. muut insinööritieteet. (Usein näennäinen) luotettavuus ja edullisuus

Ohjelmistotuotanto vs. muut insinööritieteet. (Usein näennäinen) luotettavuus ja edullisuus Yhteenveto Ohjelmistotuotanto vs. muut insinööritieteet Monimutkaisuus Näkymättömyys (Usein näennäinen) luotettavuus ja edullisuus Muunnettavuus Epäjatkuvuus virhetilanteissa Skaalautumattomuus Copyright

Lisätiedot

Testaussuunnitelma. Koskelo. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Testaussuunnitelma. Koskelo. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testaussuunnitelma Koskelo Helsinki 16.12.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Tom Bertell Johan

Lisätiedot

Harjoitustyön testaus. Juha Taina

Harjoitustyön testaus. Juha Taina Harjoitustyön testaus Juha Taina 1. Johdanto Ohjelman teko on muutakin kuin koodausta. Oleellinen osa on selvittää, että ohjelma toimii oikein. Tätä sanotaan ohjelman validoinniksi. Eräs keino validoida

Lisätiedot

58160 Ohjelmoinnin harjoitustyö

58160 Ohjelmoinnin harjoitustyö 58160 Ohjelmoinnin harjoitustyö Testaus 30.3.2009 Tuntiop. Sami Nikander sami.nikander@helsinki.fi 58160 Ohjelmoinnin harjoitustyö, Sami Nikander 30.3.2009 1 Testaus Ohjelman systemaattista tutkimista

Lisätiedot

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit Ohjelmiston testaus ja laatu Ohjelmistotekniikka elinkaarimallit Vesiputousmalli - 1 Esitutkimus Määrittely mikä on ongelma, onko valmista ratkaisua, kustannukset, reunaehdot millainen järjestelmä täyttää

Lisätiedot

Dynaaminen analyysi IV

Dynaaminen analyysi IV Dynaaminen analyysi IV Luento 9 Antti-Pekka Tuovinen 16 April 2013 1 Tavoitteet Kokemusperäinen testitapausten suunnittelu Yhteenvetoa suunnittelutekniikoista 16 April 2013 2 1 Testitapausten kokemusperäinen

Lisätiedot

Testaustyökalut Sini Mäkelä

Testaustyökalut Sini Mäkelä Testaustyökalut Sini Mäkelä Helsinki 26.11.2000 Ohjelmistotuotantovälineet seminaari HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Sisällys 1 Johdanto...1 2 Testausprosessi...1 2.1 Testauksen tasot...1

Lisätiedot

Testaussuunnitelma. PUSU-ryhmä. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Testaussuunnitelma. PUSU-ryhmä. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testaussuunnitelma PUSU-ryhmä Helsinki 13.12.2007 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (9 op) Projektiryhmä Jussi Hynninen

Lisätiedot

CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET. Jussi Kasurinen (etu.suku@lut.fi) Kevät 2015

CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET. Jussi Kasurinen (etu.suku@lut.fi) Kevät 2015 CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET Jussi Kasurinen (etu.suku@lut.fi) Kevät 2015 NOPEA KERTAUS TESTAUS HYVIN LYHYESTI Miten normaali testaajan arki ohjelmistoprojektissa sitten rullaa? Käytännössä

Lisätiedot

Ohjelmistotuotanto, s

Ohjelmistotuotanto, s Rakenteellinen testaus (white box) Ohjelmistotuotanto Testaus Rakenteellinen testaus perustuu ohjelman rakenteen hyväksikäyttöön - tieto ja kontrollivuoesityksiin tietovuo (data flow) - tiedon kulku kontrollivuo

Lisätiedot

7. Verifiointi ja validointi

7. Verifiointi ja validointi 7. Verifiointi ja validointi Verifiointi ja validointi (V&V) on ohjelmistotuotannon työvaihe, missä varmistetaan, että ohjelmisto täyttää sille asetetut implisiittiset ja eksplisiittiset vaatimukset ja

Lisätiedot

SEPA diary. Dokumentti: SEPA_diary_PK_HS.doc Päiväys: Projekti: AgileElephant Versio: V0.3

SEPA diary. Dokumentti: SEPA_diary_PK_HS.doc Päiväys: Projekti: AgileElephant Versio: V0.3 AgilElephant SEPA Diary Petri Kalsi 55347A Heikki Salminen 51137K Tekijä: Petri Kalsi Omistaja: ElectricSeven Aihe: PK&HS Sivu 1 / 7 Dokumenttihistoria Revisiohistoria Revision päiväys: 29.11.2004 Seuraavan

Lisätiedot

GLOW projekti ja sen hyväksymistestaus

GLOW projekti ja sen hyväksymistestaus GLOW projekti ja sen hyväksymistestaus Rönnquist, Olavi 2009 Leppävaara Laurea ammattikorkeakoulu Laurea Leppävaara GLOW projekti ja sen hyväksymistestaus Olavi Rönnquist Tietojenkäsittelyn koulutusohjelma

Lisätiedot

Testausraportti. Oppimistavoitteiden hallintajärjestelmä harri

Testausraportti. Oppimistavoitteiden hallintajärjestelmä harri Testausraportti Oppimistavoitteiden hallintajärjestelmä harri Helsinki 13.12.2007 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti

Lisätiedot

Hirviö Laadunvarmistussuunnitelma

Hirviö Laadunvarmistussuunnitelma Hirviö Laadunvarmistussuunnitelma Jani Heikkinen Anssi Kalliolahti Jukka Larja Kim Nylund Liia Sarjakoski Samuli Sorvakko Timo Toivanen 30. marraskuuta 2004 1 Sisältö 1 Johdanto 3 1.1 Testauksen tavoitteet

Lisätiedot

Mihin kaikkeen voit törmätä testauspäällikön saappaissa?

Mihin kaikkeen voit törmätä testauspäällikön saappaissa? Mihin kaikkeen voit törmätä testauspäällikön saappaissa? Arto Stenberg Copyright Kuntien Tiera Oy Kuntien Tiera Copyright Kuntien Tiera Oy Tieran toiminta perustuu osaamisverkoston rakentamiseen, mikä

Lisätiedot

Ohjelmistotuotanto, s2001 2/27/2003

Ohjelmistotuotanto, s2001 2/27/2003 2. Rakenteellinen testaus (white-box) Ohjelmistotuotanto Ohjelmistojen testaus 2 Rakenteellinen testaus perustuu ohjelman rakenteen hyväksikäyttöön tieto- ja kontrollivuoesityksiin tietovuo (data flow)

Lisätiedot

Ohjelmistojen mallintaminen. Luento 11, 7.12.

Ohjelmistojen mallintaminen. Luento 11, 7.12. Ohjelmistojen mallintaminen Luento 11, 7.12. Viime viikolla... Oliosuunnittelun yleiset periaatteet Single responsibility eli luokilla vain yksi vastuu Program to an interface, not to concrete implementation,

Lisätiedot

T Testiraportti - järjestelmätestaus

T Testiraportti - järjestelmätestaus T-76.115 Testiraportti - järjestelmätestaus 18. huhtikuuta 2002 Confuse 1 Tila Versio: 1.0 Tila: Päivitetty Jakelu: Julkinen Luotu: 18.04.2002 Jani Myyry Muutettu viimeksi: 18.04.2002 Jani Myyry Versiohistoria

Lisätiedot

Ohjelmiston testaussuunnitelma

Ohjelmiston testaussuunnitelma Ohjelmiston testaussuunnitelma Ryhmän nimi: Tekijä: Toimeksiantaja: Toimeksiantajan edustaja: Muutospäivämäärä: Versio: Katselmoitu (pvm.): 1 1 Johdanto Tämä lukaa antaa yleiskuvan koko testausdokumentista.

Lisätiedot

Testaussuunnitelma. Pizzeria - Pitseria HAAGA-HELIA ammattikorkeakoulu Tietojenkäsittelyn koulutusohjelma. WebPizza

Testaussuunnitelma. Pizzeria - Pitseria HAAGA-HELIA ammattikorkeakoulu Tietojenkäsittelyn koulutusohjelma. WebPizza Testaussuunnitelma Pizzeria - Pitseria HAAGA-HELIA ammattikorkeakoulu Tietojenkäsittelyn koulutusohjelma Versio 1.0 Ehdotus Laatija Raine Kauppinen VERSIOHISTORIA Versionotyyppi Versio- Päiväys Tekijä

Lisätiedot

Ohjelmistotekniikka - Luento 9 Jouni Lappalainen

Ohjelmistotekniikka - Luento 9 Jouni Lappalainen Ohjelmistotekniikka - Luento 9 Jouni Lappalainen Luku 17: Testausstrategiat V-malli ja vaiheet yksikkö- ja integrointitestaus validointitestaus järjestelmätestaus debuggaus Luku 18: Perinteisten sovellusten

Lisätiedot

3.5 Hyväksymistestaus

3.5 Hyväksymistestaus 3.5 Hyväksymistestaus Hyväksymistestauksen perusteella voidaan päätellä onko tuote sopimusten mukainen Mikäli kehitys on ulkoistettu, saatetaan hyväksymistestaussuunnitelma ja siihen liittyvät testitapaukset

Lisätiedot

Järjestelmätestauksen vaatimukset. 6. Järjestelmätestaus (B, 14) Järjestelmätestauksen korkean tason testausstrategia

Järjestelmätestauksen vaatimukset. 6. Järjestelmätestaus (B, 14) Järjestelmätestauksen korkean tason testausstrategia . Järjestelmätestaus (B, ) Järjestelmätestaus (system testing) tehdään integrointitestauksen jälkeen. Siinä järjestelmää testataan kokonaisuutena, johon kuuluvat ohjelmiston lisäksi laitteisto ja järjestelmän

Lisätiedot

JReleaser Yksikkötestaus ja JUnit. Mikko Mäkelä 6.11.2002

JReleaser Yksikkötestaus ja JUnit. Mikko Mäkelä 6.11.2002 JReleaser Yksikkötestaus ja JUnit Mikko Mäkelä 6.11.2002 Sisältö Johdanto yksikkötestaukseen JUnit yleisesti JUnit Framework API (TestCase, TestSuite) Testien suorittaminen eri työkaluilla Teknisiä käytäntöjä

Lisätiedot

Ohjelmistotestauksen perusteita II

Ohjelmistotestauksen perusteita II Ohjelmistotestauksen perusteita II Luento 2 Antti-Pekka Tuovinen 14 March 2013 1 Luennon oppimistavoitteet Testausprosessin perustoiminnot Testauksen psykologiaa Testauksen seitsemän periaatetta 14 March

Lisätiedot

Toisessa viikkoharjoituksessa on tavoitteena tutustua JUnit:lla testaukseen Eclipse-ympäristössä.

Toisessa viikkoharjoituksessa on tavoitteena tutustua JUnit:lla testaukseen Eclipse-ympäristössä. Toisessa viikkoharjoituksessa on tavoitteena tutustua JUnit:lla testaukseen Eclipse-ympäristössä. JUnit-ympäristö 1. Luo tests -pakkaukseen uusi luokka. Nimeä VHTestit. 2. Laita VHTestit periytymään TestCase:sta

Lisätiedot

Testaus osana ohjelmistojen elinkaarta I

Testaus osana ohjelmistojen elinkaarta I Testaus osana ohjelmistojen elinkaarta I Luento 3 Antti-Pekka Tuovinen www.cs.helsinki.fi 19 March 2013 1 Oppimistavoitteet Ohjelmistokehityksen V-malli Testauksen tasot Komponenttitestaus Integrointitestaus

Lisätiedot

9. Luento: Ohjelmistotyö. Tommi Mikkonen, tommi.mikkonen@tut.fi

9. Luento: Ohjelmistotyö. Tommi Mikkonen, tommi.mikkonen@tut.fi 9. Luento: Ohjelmistotyö Tommi Mikkonen, tommi.mikkonen@tut.fi Agenda Johdanto Ristikäännös Testaus ja virheen jäljitys Yleensä Kehitysympäristössä Käyttöympäristössä Laitteiston testaus Iteratiivisesta

Lisätiedot

Yksikkötestaus. Kattava testaus. Moduulitestaus. Ohjelman testaus. yksikkotestaus/ Seija Lahtinen

Yksikkötestaus. Kattava testaus. Moduulitestaus. Ohjelman testaus. yksikkotestaus/ Seija Lahtinen Yksikkötestaus Kattava testaus Moduulitestaus Ohjelman testaus 1 Kattava testaus Testauksen perimmäinen tarkoitus on LÖYTÄÄ VIRHEITÄ Testaus pitäisi olla täydellinen: - Jokainen pyydetty arvo pitäisi testata

Lisätiedot

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä www.niksula.cs.hut.fi/~jjkankaa// Testauksen loppuraportti v. 1.0 Päivitetty 23.4.2001 klo 19:05 Mikko Viljainen 2 (14) Dokumentin versiohistoria Versio Päivämäärä Tekijä / muutoksen tekijä Selite 1.0

Lisätiedot

TESTIRAPORTTI - VYM JA KANTA Virtuaaliyhteisöjen muodostaminen Versio 1.0

TESTIRAPORTTI - VYM JA KANTA Virtuaaliyhteisöjen muodostaminen Versio 1.0 TESTIRAPORTTI - VYM JA KANTA Versio 1.0 i Sisällysluettelo 1. YLEISTÄ 2 1.1. Dokumentin tarkoitus ja yleisiä toimintaohjeita 2 1.2. Viittaukset muihin dokumentteihin 2 2. SUORITETTAVA TESTI 3 2.1. Testauksen

Lisätiedot

Hyväksymistestauksen tarkistuslista järjestelmän hankkijalle

Hyväksymistestauksen tarkistuslista järjestelmän hankkijalle Hyväksymistestauksen tarkistuslista järjestelmän hankkijalle Tarkistuslista on suunniteltu käytettäväksi hyväksymistestauksen suunnittelussa, valmiuksien arvioinnissa ja katselmoinnissa.tämä tarkistuslista

Lisätiedot

TIE Ohjelmistojen testaus 2015 Harjoitustyö Vaiheet 1 ja 2. Antti Jääskeläinen Matti Vuori

TIE Ohjelmistojen testaus 2015 Harjoitustyö Vaiheet 1 ja 2. Antti Jääskeläinen Matti Vuori TIE-21204 Ohjelmistojen testaus 2015 Harjoitustyö Vaiheet 1 ja 2 Antti Jääskeläinen Matti Vuori Työn yleiset järjestelyt 14.9.2015 2 Valmistautuminen Ilmoittaudu kurssille Lue harjoitustyön nettisivut

Lisätiedot

Mihin kaikkeen voit törmätä testauspäällikön saappaissa?

Mihin kaikkeen voit törmätä testauspäällikön saappaissa? Mihin kaikkeen voit törmätä testauspäällikön saappaissa? Arto Stenberg Copyright Kuntien Tiera Oy Kuntien Tiera Copyright Kuntien Tiera Oy Tiera on vuonna 2010 perustettu yli 200:n kuntatoimijan omistama

Lisätiedot

Hirviö Laadunvarmistussuunnitelma

Hirviö Laadunvarmistussuunnitelma Hirviö Laadunvarmistussuunnitelma Jani Heikkinen Anssi Kalliolahti Jukka Larja Kim Nylund Liia Sarjakoski Samuli Sorvakko Timo Toivanen 8. helmikuuta 2005 1 Sisältö 1 Johdanto 3 1.1 Testauksen tavoitteet

Lisätiedot

Testaussuunnitelma. Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie

Testaussuunnitelma. Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie Testaussuunnitelma Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie Helsinki 14.7.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti

Lisätiedot

Ohjelmistojen virheistä

Ohjelmistojen virheistä Ohjelmistojen virheistä Muutama sana ohjelmistojen virheistä mistä niitä syntyy? Matti Vuori, www.mattivuori.net 2013-09-02 1(8) Sisällysluettelo Ohjelmistojen virheitä: varautumattomuus ongelmiin 3 Ohjelmistojen

Lisätiedot

Copyright by Haikala. Ohjelmistotuotannon osa-alueet

Copyright by Haikala. Ohjelmistotuotannon osa-alueet Copyright by Haikala Ohjelmistotuotannon osa-alueet Ohjelmiston elinkaari 1. Esitutkimus, tarvekartoitus, kokonaissuunnittelu, järjestelmäsuunnittelu (feasibility study, requirement study, preliminary

Lisätiedot

Testaus-tietoisku: Tärkeimpiä asioita testauksesta projektityökurssilaisille

Testaus-tietoisku: Tärkeimpiä asioita testauksesta projektityökurssilaisille 1(23) Testaus-tietoisku: Tärkeimpiä asioita testauksesta projektityökurssilaisille Matti Vuori, Tampereen teknillinen yliopisto 30.10.2012 Sisällysluettelo 1/2 Esityksen tarkoitus 4 Laatu on tärkeää, ei

Lisätiedot

Ohjelmistotestaus -09

Ohjelmistotestaus -09 Ohjelmistotestaus Testaustyökalut- ja automaatio Testaustyökalut ja -automaatio Testaustyökaluilla tuetaan testaustyötä sen eri vaiheissa Oikea työkalu oikeaan tarkoitukseen Testausautomaatio perustuu

Lisätiedot

Kuopio Testausraportti Kalenterimoduulin integraatio

Kuopio Testausraportti Kalenterimoduulin integraatio Kuopio Testausraportti Kalenterimoduulin integraatio Kuopio, testausraportti, 22.4.2002 Versiohistoria: Versio Pvm Laatija Muutokset 0.1 22.4.2002 Matti Peltomäki Ensimmäinen versio 0.9 22.4.2002 Matti

Lisätiedot

Ohjelmointitekniikka lyhyesti Survival Kit 1 Evtek KA ELINKAARIMALLEISTA

Ohjelmointitekniikka lyhyesti Survival Kit 1 Evtek KA ELINKAARIMALLEISTA Ohjelmointitekniikka lyhyesti Survival Kit. Vesiputousmalli ELINKAARIMALLEISTA. Ohjelmiston elinkaari Ohjelmiston elinkaarella (life cycle) tarkoitetaan aikaa, joka kuluu ohjelmiston kehittämisen aloittamisesta

Lisätiedot

Kuopio Testausraportti Asiakkaat-osakokonaisuus

Kuopio Testausraportti Asiakkaat-osakokonaisuus Kuopio Testausraportti Asiakkaat-osakokonaisuus Kuopio, testausraportti, 25.3.2002 Versiohistoria: Versio Pvm Laatija Muutokset 0.1 11.2.2002 Matti Peltomäki Ensimmäinen versio 0.9 11.2.2002 Matti Peltomäki

Lisätiedot

Tik-76.115 Tietojenkäsittelyopin ohjelmatyö Tietotekniikan osasto Teknillinen korkeakoulu. LiKe Liiketoiminnan kehityksen tukiprojekti

Tik-76.115 Tietojenkäsittelyopin ohjelmatyö Tietotekniikan osasto Teknillinen korkeakoulu. LiKe Liiketoiminnan kehityksen tukiprojekti Tik-76.115 Tietojenkäsittelyopin ohjelmatyö Tietotekniikan osasto Teknillinen korkeakoulu TESTIRAPORTTI LiKe Liiketoiminnan kehityksen tukiprojekti Versio: 1.1 Tila: hyväksytty Päivämäärä: 13.2.2001 Tekijä:

Lisätiedot

Ohjelmistotekniikka - Luento 10 Jouni Lappalainen

Ohjelmistotekniikka - Luento 10 Jouni Lappalainen Ohjelmistotekniikka - Luento 10 Jouni Lappalainen Luku 17: Testausstrategiat V-malli ja vaiheet yksikkö- ja integrointitestaus validointitestaus järjestelmätestaus debuggaus Luku 18: Perinteisten sovellusten

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 2.3.2009 T-106.1208 Ohjelmoinnin perusteet Y 2.3.2009 1 / 28 Puhelinluettelo, koodi def lue_puhelinnumerot(): print "Anna lisattavat nimet ja numerot." print

Lisätiedot

Wipron Suomen toimipisteen ohjelmistotestauksen kehittäminen. Marko Isoaho

Wipron Suomen toimipisteen ohjelmistotestauksen kehittäminen. Marko Isoaho 0 Wipron Suomen toimipisteen ohjelmistotestauksen kehittäminen Marko Isoaho Tampereen yliopisto Tietojenkäsittelytieteiden laitos Tietojenkäsittelyoppi Pro gradu -tutkielma Ohjaaja: Marko Helenius Toukokuu

Lisätiedot

Olio-ohjelmointi Syntaksikokoelma

Olio-ohjelmointi Syntaksikokoelma C++-kielen uusia ominaisuuksia Olio-ohjelmointi Syntaksikokoelma 31.10.2008 Bool-tietotyyppi: Totuusarvo true (1), jos ehto on tosi ja false (0) jos ehto epätosi. Dynaaminen muistinvaraus: Yhden muuttuja

Lisätiedot

Testausprosessin vaatimukset. 2. Testausprosessi (Artikkelit) Vesiputousmallin ongelmia. V-mallin neljä osavaihetta. Testausprosessimalli V-malli

Testausprosessin vaatimukset. 2. Testausprosessi (Artikkelit) Vesiputousmallin ongelmia. V-mallin neljä osavaihetta. Testausprosessimalli V-malli 2. ausprosessi (Artikkelit) Nykyisin useimpien prosessimallien lähtökohta on, että testaus on oleellinen osa ohjelmistotuotantoprosessia. Itse asiassa huolellinen testaus vie helposti 50% tai enemmän käytettävistä

Lisätiedot

Ohjelmistotestauksen suunnittelu - Case: A-lehdet Oy:n laskujen tulostusohjelma

Ohjelmistotestauksen suunnittelu - Case: A-lehdet Oy:n laskujen tulostusohjelma Ohjelmistotestauksen suunnittelu - Case: A-lehdet Oy:n laskujen tulostusohjelma Eija Rauhala Tietojenkäsittelyn koulutusohjelma 2010 Tiivistelmä Koulutusohjelma Tekijät Eija Rauhala Opinnäytetyön nimi

Lisätiedot

OHJELMISTON TESTAUKSEN AUTOMATISOINTI

OHJELMISTON TESTAUKSEN AUTOMATISOINTI OHJELMISTON TESTAUKSEN AUTOMATISOINTI Pentti Pohjolainen Pro gradu -tutkielma Tietojenkäsittelytieteen laitos Kuopion yliopisto Joulukuu 2003 2 KUOPION YLIOPISTO, informaatioteknologian ja kauppatieteiden

Lisätiedot

Tapahtuipa Testaajalle...

Tapahtuipa Testaajalle... Tapahtuipa Testaajalle... - eli testaus tosielämässä 09.10.2007 Juhani Snellman Qentinel Oy 2007 Agenda Minä ja mistä tulen Testauksen konteksti Tapauksia tosielämästä ja työkaluja 2 Minä Juhani Snellman

Lisätiedot

Ohjelmien testaustyökalut

Ohjelmien testaustyökalut Ohjelmien testaustyökalut Antti Hämäläinen Helsinki 13.11.2000 Ohjelmistotuotantovälineet seminaari HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Ohjelmien testaustyökalut Antti Hämäläinen Ohjelmistotuotantovälineet

Lisätiedot

Vakuutusyhtiöiden testausinfo

Vakuutusyhtiöiden testausinfo Vakuutusyhtiöiden testausinfo ATJ:n ulkoisten liittymien testaaminen Jonna Hannukainen ja Markku Noukka 12. ja 17.5.2006 (Päivitetty 18.5.2006) ATJ:n integraatiotestaus vakuutusyhtiöiden kanssa Testauksen

Lisätiedot

Ohjelmoinnin peruskurssien laaja oppimäärä, kevät

Ohjelmoinnin peruskurssien laaja oppimäärä, kevät Ohjelmoinnin peruskurssien laaja oppimäärä, kevät Luento 1: Testaus, ohjelman suunnittelutapoja Riku Saikkonen (osa kalvoista on suoraan ei-laajan kurssin luennoista) 14. 1. 2013 Sisältö 1 Ohjelmien testaustapoja

Lisätiedot

Testaussuunnitelma. Oppimistavoitteiden hallintajärjestelmä harri

Testaussuunnitelma. Oppimistavoitteiden hallintajärjestelmä harri Testaussuunnitelma Oppimistavoitteiden hallintajärjestelmä harri Helsinki 15.11.2007 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti

Lisätiedot

Testaus osana ohjelmistojen elinkaarta II

Testaus osana ohjelmistojen elinkaarta II Testaus osana ohjelmistojen elinkaarta II Luento 4 Antti-Pekka Tuovinen www.cs.helsinki.fi 21 March 2013 1 Oppimistavoitteet Ohjelmistoversioiden testaus Testityyppejä www.cs.helsinki.fi 21 March 2013

Lisätiedot

Ohjelmistotekniikan menetelmät, toteutuksesta ja testauksesta

Ohjelmistotekniikan menetelmät, toteutuksesta ja testauksesta 582101 - Ohjelmistotekniikan menetelmät, toteutuksesta ja testauksesta 1 Toteutuksesta ja testauksesta Suunnitteluprosessista Tarkan tason luokkasuunnittelu Siirtyminen UML-kaavioista Java-toteutukseen

Lisätiedot

A274101 TIETORAKENTEET JA ALGORITMIT

A274101 TIETORAKENTEET JA ALGORITMIT A274101 TIETORAKENTEET JA ALGORITMIT PERUSTIETORAKENTEET LISTA, PINO, JONO, PAKKA ABSTRAKTI TIETOTYYPPI Tietotyyppi on abstrakti, kun se on määritelty (esim. matemaattisesti) ottamatta kantaa varsinaiseen

Lisätiedot

Testaussuunnitelmat. Luennon tavoitteista. Motivointia. Haikala ja Märijärvi, Ohjelmistotuotanto. Pressman, Software Engineering

Testaussuunnitelmat. Luennon tavoitteista. Motivointia. Haikala ja Märijärvi, Ohjelmistotuotanto. Pressman, Software Engineering Testaussuunnitelmat Luennon tavoitteista Luennon sisällöstä Motivointia Lähteinä: Haikala ja Märijärvi, Ohjelmistotuotanto Pressman, Software Engineering 1 Tavoitteista Luentojen jälkeen opiskelijan tulisi

Lisätiedot

Tarkastusten rakenne. 10. Tarkastukset. Tuotoksen tekijän rooli. Tarkastustiimi. Tarkastusprosessin vaiheet. Tarkastusprosessi

Tarkastusten rakenne. 10. Tarkastukset. Tuotoksen tekijän rooli. Tarkastustiimi. Tarkastusprosessin vaiheet. Tarkastusprosessi 10. Tarkastukset Tarkastus (inspection) on tehokas analyysitekniikka, jota voidaan käyttää minkä tahansa projektin tuotoksen läpikäyntiin. Tarkastus on systemaattinen ja yksityiskohtainen katselmointi

Lisätiedot

Testauspäällikön tarinoita Arto Stenberg

Testauspäällikön tarinoita Arto Stenberg Testauspäällikön tarinoita Arto Stenberg 2.12.2013 A software foundry that helps companies create breakthrough product innovations. We help our clients to: 1. Create new products 2. Scale out their product

Lisätiedot

Dynaaminen analyysi II

Dynaaminen analyysi II Dynaaminen analyysi II Luento 7 Antti-Pekka Tuovinen 9 April 2013 1 Tavoitteet Black-box testitapausten suunnittelutekniikat II Tilamallien käyttö Syys-seurausverkot ja päätöstaulut Käyttötapaukset Yhteenveto

Lisätiedot

UML- mallinnus: Tilakaavio

UML- mallinnus: Tilakaavio UML- mallinnus: Tilakaavio Karkea kuvaus UML- kaavioiden käytöstä ohjelmistonkehityksen eri vaiheissa ja tehtävissä. Mallinnus tilakaavioilla Tilakaaviolla kuvataan yhden luokan olioiden tilan muuttumista

Lisätiedot

SEPA diary. Dokumentti: SEPA_diary_PK_HS.doc Päiväys: Projekti: AgileElephant

SEPA diary. Dokumentti: SEPA_diary_PK_HS.doc Päiväys: Projekti: AgileElephant AgilElephant SEPA Diary Petri Kalsi 55347A Heikki Salminen 51137K Tekijä: Petri Kalsi Omistaja: ElectricSeven Aihe: PK&HS Sivu 1 / 7 Dokumenttihistoria Revisiohistoria Revision Numero Revision Päiväys

Lisätiedot

Kombinaatiotestauksen tekniikat. 5. Kombinaatiotestaus (P&Y: 11) Luokittelutestauksen algoritmi. Luokittelutestaus. Pankkiautomaattiin kirjautuminen

Kombinaatiotestauksen tekniikat. 5. Kombinaatiotestaus (P&Y: 11) Luokittelutestauksen algoritmi. Luokittelutestaus. Pankkiautomaattiin kirjautuminen Ohjelmistojen testaus luentokalvot 5. Kombinaatiotestaus (P&Y: 11) Toiminnallinen määrittely palvelee hyvin erilaisia sidosryhmiä, joista testaajat ovat vain yksi. Näin määrittely ei yleensä ole sellaisessa

Lisätiedot

Ohjelmistojen testaus

Ohjelmistojen testaus Ohjelmistojen testaus Mika Katara, Matti Vuori ja Antti Jääskeläinen Tampereen teknillinen yliopisto, Tietotekniikan laitos 25.8.2014 Ohjelmistojen testaus, 2014 1(507) Mitä testaus on? Erilaisia näkökulmia

Lisätiedot

CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET. Jussi Kasurinen (etu.suku@lut.fi) Kevät 2015

CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET. Jussi Kasurinen (etu.suku@lut.fi) Kevät 2015 CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET Jussi Kasurinen (etu.suku@lut.fi) Kevät 2015 EDELLISELLÄ KERRALLA TAPAHTUNUTTA Täydellinen testaus on mahdotonta. Testataan, koska virheiden löytyminen ajoissa

Lisätiedot

WCLIQUE. Ohjelmistoprojekti. Testaussuunnitelma

WCLIQUE. Ohjelmistoprojekti. Testaussuunnitelma TKK/DISKO/Tik-76.115 WCLIQUE Projektiryhmä Clique http://www.hut.fi/jekahkon/wclique/testplan.html WCLIQUE Ohjelmistoprojekti Projektiryhmä Clique: Janne Dufva, 75008T, email: janne.dufva@nokia.com, 75014C,

Lisätiedot

TESTIRAPORTTI - XMLREADER-LUOKKA Virtuaaliyhteisöjen muodostaminen Versio 1.0 (luonnos 2)

TESTIRAPORTTI - XMLREADER-LUOKKA Virtuaaliyhteisöjen muodostaminen Versio 1.0 (luonnos 2) TESTIRAPORTTI - XMLREADER-LUOKKA Versio 1.0 (luonnos 2) Copyright Comptel Oyj i Sisällysluettelo 1. YLEISTÄ 2 1.1. Dokumentin tarkoitus ja yleisiä toimintaohjeita 2 1.2. Viittaukset muihin dokumentteihin

Lisätiedot

TESTIRAPORTTI - XMLREADER LUOKKA Virtuaaliyhteisöjen muodostaminen Versio 1.0

TESTIRAPORTTI - XMLREADER LUOKKA Virtuaaliyhteisöjen muodostaminen Versio 1.0 TESTIRAPORTTI - XMLREADER LUOKKA i Sisällysluettelo 1. YLEISTÄ 2 1.1. Dokumentin tarkoitus ja yleisiä toimintaohjeita 2 1.2. Viittaukset muihin dokumentteihin 2 2. SUORITETTAVA TESTI 3 2.1. Testauksen

Lisätiedot

TARKASTUSMENETTELYT JA NIIDEN APUVÄLINETUKI

TARKASTUSMENETTELYT JA NIIDEN APUVÄLINETUKI TARKASTUSMENETTELYT JA NIIDEN APUVÄLINETUKI Vesa Tenhunen Tarkastusmenettelyt Keino etsiä puutteita ohjelmakoodeista, dokumenteista ym. ohjelmistoprosessissa syntyvästä materiaalista Voidaan käyttää kaikissa

Lisätiedot

Ohjelmiston testaus ja laatu. Testaus yleistä

Ohjelmiston testaus ja laatu. Testaus yleistä Ohjelmiston testaus ja laatu Testaus yleistä Määritelmä Testaus on systemaattinen lähestymistapa ohjelmistoissa esiintyvien virheiden löytämiseksi ohjelmaa suorittamalla. Testattaessa pyritään luomaan

Lisätiedot

Määrittelydokumentti NJC2. Helsinki 11.2.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Määrittelydokumentti NJC2. Helsinki 11.2.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Määrittelydokumentti NJC2 Helsinki 11.2.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti ( ov) Projektiryhmä Eero Anttila Olli

Lisätiedot

Sisältö. Integrointitestaus. Yleinen teoreettinen pohja. Integrointitestaus prosessina. Skooppi, focus ja locus

Sisältö. Integrointitestaus. Yleinen teoreettinen pohja. Integrointitestaus prosessina. Skooppi, focus ja locus Sisältö Integrointitestaus Antti Tevanlinna, tutkija, Helsingin yliopisto, Tietojenkäsittelytieteen laitos Yleinen teoreettinen pohja Mitä on integrointitestaus Integrointitestauksen tarve Integrointitestauksen

Lisätiedot

Ohjelmistotestauksen perusteita I Luento 1 Antti-Pekka Tuovinen

Ohjelmistotestauksen perusteita I Luento 1 Antti-Pekka Tuovinen Ohjelmistotestauksen perusteita I Luento 1 Antti-Pekka Tuovinen 12 March 2013 1 Luennon oppimistavoitteet Mitä ohjelmistojen testaaminen on? Mitä tarkoittavat virhetoiminto, vika ja erehdys? Mikä on testauksen

Lisätiedot

Testiautomaatio tietovarastossa. Automaattisen regressiotestauksen periaate ja hyödyt

Testiautomaatio tietovarastossa. Automaattisen regressiotestauksen periaate ja hyödyt Testiautomaatio tietovarastossa Automaattisen regressiotestauksen periaate ja hyödyt Sisältö 2 Testaus kiinteänä osana DW-toteutusta Regressiotestauksen merkitys Robot Framework Automatisoitu DW:n regressiotestaus:

Lisätiedot

Onnistunut Vaatimuspohjainen Testaus

Onnistunut Vaatimuspohjainen Testaus Onnistunut Vaatimuspohjainen Testaus Kari Alho Solution Architect Nohau Solutions, Finland Sisältö Mitä on vaatimuspohjainen testaus? Vaatimusten ymmärtämisen haasteet Testitapausten generointi Työkalujen

Lisätiedot

3. Testaus osana ohjelmistoprosessia

3. Testaus osana ohjelmistoprosessia 3. Testaus osana ohjelmistoprosessia Ohjelmistotuotanto on paljon muutakin kuin testaamista. Mutta miten testaus liitetään ohjelmistoprosessiin? Tässä kohdassa esitellään ns. testauksen V-malli ja siihen

Lisätiedot

Testaus teoriassa ja käytännössä. Jukka Paakki Helsingin yliopisto Tietojenkäsittelytieteen laitos

Testaus teoriassa ja käytännössä. Jukka Paakki Helsingin yliopisto Tietojenkäsittelytieteen laitos Testaus teoriassa ja käytännössä Jukka Paakki Helsingin yliopisto Tietojenkäsittelytieteen laitos Teoria = tutkimus IEEE Transactions on Software Engineering, 2000-2002 Software Testing, Verification &

Lisätiedot

Standardin IEC testaustekniikoista. V-malli vai ketterämpi prosessi?

Standardin IEC testaustekniikoista. V-malli vai ketterämpi prosessi? Standardin IEC 61508-3 testaustekniikoista V-malli vai ketterämpi prosessi? Mika Katara mika.katara@tut.fi Tampereen teknillinen yliopisto Ohjelmistotekniikan laitos 2 Sisältö Termien käännökset Johdanto

Lisätiedot