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

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

Oppimisalusta eassarin TTK-91-tehtävien käyttöohje

Testausraportti. Orava. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

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

Testausraportti. Oppimistavoitteiden hallintajärjestelmä harri

Convergence of messaging

UCOT-Sovellusprojekti. Testausraportti

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

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

Testausraportti v.1.3

Testaussuunnitelma Labra

T Testiraportti - järjestelmätestaus

Ohjelmistotuotantoprojekti

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

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

58160 Ohjelmoinnin harjoitustyö

Testaussuunnitelma. Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie

Ohjelmiston testaussuunnitelma

T Testiraportti - integraatiotestaus

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

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

Harjoitustyön testaus. Juha Taina

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

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

CoMa - Testausdokumentti

Ylläpitodokumentti. Boa Open Access. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Kuopio Testausraportti Kalenterimoduulin integraatio

Ylläpitodokumentti. Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie

COTOOL dokumentaatio Testausdokumentit

dokumentin aihe Dokumentti: Testausraportti_I1.doc Päiväys: Projekti : AgileElephant

Lohtu-projekti. Testaussuunnitelma

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

Projektisuunnitelma. KotKot. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

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

TESTIRAPORTTI - VYM JA KANTA Virtuaaliyhteisöjen muodostaminen Versio 1.0

Kuopio Testausraportti Asiakkaat-osakokonaisuus

L models. Testisuunnitelma. Ryhmä Rajoitteiset

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

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit

Ohjelmistojen mallintaminen. Luento 11, 7.12.

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

Testauksen hallintaa teekkareille (ja muille kiinnostuneille) Arto Stenberg

TESTIRAPORTTI - JÄRJESTELMÄ, ADMIN Virtuaaliyhteisöjen muodostaminen Versio 1.0

Ohjelmiston testaus ja laatu. Testaustasot

T Tietojenkäsittelyopin ohjelmatyö. Testiraportti, vaihe LU. Tietokonegrafiikka-algoritmien visualisointi. Testiraportti, vaihe T3

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

Hirviö Laadunvarmistussuunnitelma

T Tietojenkäsittelyopin ohjelmatyö. Testiraportti, vaihe T1. Tietokonegrafiikka-algoritmien visualisointi. Testiraportti, vaihe T1

Ohjelmiston testaus ja laatu. Testausmenetelmiä

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

Testaussuunnitelma. Oppimistavoitteiden hallintajärjestelmä harri

Testaaminen ohjelmiston kehitysprosessin aikana

T Testiraportti - integraatiotestaus

Ohjelmien testaustyökalut

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

CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET. Jussi Kasurinen Kevät 2015

TESTIRAPORTTI - XMLREADER LUOKKA Virtuaaliyhteisöjen muodostaminen Versio 1.0

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

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

Hirviö Laadunvarmistussuunnitelma

TIE Ohjelmistojen testaus Harjoitustyön esittely osa 2: Vaiheet 3 & 4. Antti Jääskeläinen Matti Vuori

Testaussuunnitelma. Dokumentti: Testaussuunnitelma.doc Päiväys: Projekti: AgileElephant Versio: V0.4

Yhteenvetodokumentti. myva. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

WCLIQUE. Ohjelmistoprojekti. Testaussuunnitelma

Automaattinen yksikkötestaus

Testausraportti. Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie

Versio Päiväys Tekijä Kuvaus Tikkanen varsinainen versio

Testaussuunnitelma. Dokumentti: Testaussuunnitelma.doc Päiväys: Projekti: AgileElephant

Testausdokumentti. Sivu: 1 / 10. Ohjelmistotuotantoprojekti Sheeple Helsingin yliopisto. Versiohistoria

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

Projektisuunnitelma Viulu

Lohtu-projekti. Testiraportti. Versiohistoria: syklin toteutuksen testit. 1. ajo Virve

Ylläpitodokumentti Mooan

Loppuraportti. Kohahdus. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Testaussuunnitelma. Ohjelmistotuotantoprojekti XPerf. Helsingin yliopisto. Tietojenkäsittelytieteen laitos

Ohjelmistotestaus -09

CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET. Jussi Kasurinen Kevät 2016

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

Good Minton QA Raportti Iteraatio 1 Sulkapalloliiton Kilpailujärjestelmä

Vakuutusyhtiöiden testausinfo

Yhteenvetodokumentti. PLAYOFF Jari Anttila Sanna Fröblom Aarno Sandvik Tommi Paavilainen Miikka Kohijoki. Päivi Pääkkö, ohjaaja

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

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

Dynaaminen analyysi II

TIE Ohjelmistojen testaus Harjoitustyön esittely osa 2: Vaiheet 3 & 4. Antti Jääskeläinen Matti Vuori

TESTIRAPORTTI - JÄRJESTELMÄ, PORTAL Virtuaaliyhteisöjen muodostaminen Versio 1.0

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

Testaussuunnitelma Versio Päiväys Tekijä Kuvaus

Simulaattoriavusteinen ohjelmistotestaus työkoneympäristössä. Simo Tauriainen

Testaussuunnitelma Vaatimusanalyysin hallintatyökalu

Testaussuunnitelma Luuppi-projekti

LAATURAPORTTI Iteraatio 1

Ylläpitodokumentti. Kohahdus. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

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

CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET. Jussi Kasurinen Kevät 2015

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

Onnistunut SAP-projekti laadunvarmistuksen keinoin

Laadunvarmistusdokumentti

Subversion-ohje. Linux Traffic Control-käyttöliittymä Ryhmä paketti2

Transkriptio:

Testaussuunnitelma Koskelo Helsinki 16.12.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Tom Bertell Johan Brunberg Lauri Liuhto Eeva Nevalainen Harri Tuomikoski Asiakas Teemu Kerola Johtoryhmä Juha Taina Turjo Tuohiniemi Kotisivu http://www.cs.helsinki.fi/group/koskelo/ Versiohistoria Versio Päiväys Tehdyt muutokset 0.1 19.10.2004 Ensimmäinen versio 1.0 7.11.2004 Valmis dokumentti

Sisältö i 1 Johdanto 1 1.1 Testausstrategia.............................. 1 1.2 Testauksen tarkkailu........................... 1 2 Testauksen vaiheet 1 2.1 Yksikkötestaus.............................. 2 2.2 Integraatiotestaus............................. 2 2.3 Järjestelmätestaus............................ 2 2.4 Hyväksymistestaus............................ 2 3 Testausvälineet 3 3.1 JUnit ja HttpUnit............................. 3 3.2 Loppukäyttäjä............................... 3 4 Testitapaukset 3 4.1 Komponentit............................... 3 4.2 Testitapaukset............................... 4 4.3 Järjestelmätestauksen testitapaukset.................. 4 4.3.1 Staattisen tehtävän laatiminen................. 4 4.3.2 Dynaamisen tehtävän laatiminen................ 4 4.3.3 Staattisen tehtävän muokkaaminen............... 5 4.3.4 Dynaamisen tehtävän muokkaaminen.............. 5 4.3.5 Tehtävän ratkaiseminen..................... 5 Lähteet 6

1 Johdanto 1 Tämä on Koskelo-projektin testaussuunnitelma. Dokumentin tavoitteena on selventää ryhmäläisille mitä projektin testausvaiheessa on tarkoitus tehdä ja miten siihen voidaan valmistautua jo toteutusvaiheen aikana. 1.1 Testausstrategia Ohjelman testauksessa noudatetaan testauksen V-mallia, joka oletetaan ryhmäläisille tutuksi Ohjelmistotuotanto-kurssilta. Ideana on aloittaa yksikkötestauksella pienistä ohjelmiston osista kuten metodeista ja luokista. Tämän jälkeen siirrytään testaamaan komponenttien yhteistoimintaa. Kolmannessa vaiheessa testataan osajärjestelmiä kokonaisuuksina. Neljännessä vaiheessa testataan koko järjestelmän toimivuutta, jonka jälkeen se luovutetaan asiakkaalle testattavaksi. Asiakas testaa ohjelmistoa verraten sitä antamiinsa vaatimuksiin. Yksikkötestaus ja integrointitestaus pyritään automatisoimaan mahdollisimman hyvin. Järjestelmätestauksessa jouduttaneen hyödyntämään loppukäyttäjiä tutkimaan onko ohjelman looginen toiminta oikein. Loppukäyttäjinä projektin testausvaiheessa toimivat ensisijaisesti projektilaiset, mutta mahdollisuuksien rajoissa hyödynnetään lähisukulaisia, tietojenkäsittelytieteen opiskelijoita ja muita vapaaehtoisia. Kun ohjelmistoa testaa joku muu kuin ohjelmistoprojektin jäsen, on paikalla kirjaamassa testaajan kommentteja joku projektilainen. 1.2 Testauksen tarkkailu Projektin testausvastaava Eeva Nevalainen tarkkailee testauksen etenemistä ja ylläpitää kirjanpitoa testien läpäisemisestä. Mikäli testauksen aikataulu, kattavuus tai jokin muu asia alkaa luisua raiteiltaan keskustellaan ryhmän kesken tarvittavista toimenpiteistä. Testauksen lopuksi testausvastaava kirjoittaa testausraportin. 2 Testauksen vaiheet Ryhmän testauksessa pyritään noudattamaan testauksen V-mallin eri vaiheita. V- mallia sovelletaan projektiin lineaarisesti varsinaisen toteutusvaiheen jälkeen. Testitapauksia suunnitellaan toteutusvaiheen aikana suunnittelun kuitenkin painottuen toteutuksen loppuvaiheeseen.

2 2.1 Yksikkötestaus Yksikkötestauksessa hyödynnettään JUnit-ohjelmistoa [GB04]. Kaikki metodit testataan mahdollisimman täydellisesti ja testitapaukset kirjoitetaan siten, että metodin kaikissa haaroissa käydään. Kaikkia ehtolauseita pyritään testaamaan testitapauksilla siten, että niiden ehto täyttyy ja ei täyty, sekä näiden yhdistelmiä jos metodissa on useampi ehtolause. Silmukoille testataan syötteitä, joiden seurauksena silmukkaa ei suoriteta tai silmukan pituus olisi yhtä pidempi kuin maksimi. Ylipitkiä silmukoita ei välttämättä kuitenkaan ole mahdollista testata, jos ohjelmiston kaikissa silmukoissa pituutena käytetään syötteen pituutta. 2.2 Integraatiotestaus Integraatiotestauksessa testataan Koskelo-komponenttien toimintaa keskenään ja erityisesti testataan niiden toimivuutta eassarin ja Titokoneen kanssa. Integraatiotestauksessa pyritään huomioimaan kunkin komponentin kohdalla, että se kutsuu oikeita osia ulkopuolisista järjestelmistä, sillä käytännössä kaikki järjestelmän sisäiset viestit kulkevat eassarin kautta eivätkä suoraan Koskelon toteuttamilta komponenteilta toisille. 2.3 Järjestelmätestaus Järjestelmätestauksessa tutkitaan Koskelon tuottaman ohjelmiston toimivuutta kokonaisuutena ja erityisesti huomiodaan toiminnassa vaatimusmäärittelyssä eristettyjen vaatimusten täyttyminen. Järjestelmätestauksessa pyritään kustakin vaatimuksesta kirjaamaan täyttyykö vaatimus tuotetussa ohjelmistossa tai jos vaatimus ei täyty, miten vaatimuksen täyttymättömyys käy ilmi. Myöskin kirjataan ylös, jos jonkin vaatimuksen täyttymistä ei ole mahdollista havaita tai testata. 2.4 Hyväksymistestaus Hyväksymistestauksen suorittaa asiakas. Jos hyväksymistestauksessa ilmenee suuria virheitä, niiden korjaamisesta keskustellaan asiakkaan ja ryhmän kesken, mutta pienet toiminnalliset virheet pyritään korjaamaan. Hyväksymistestauksen voidaan todeta olevan valmis, kun kaikki havaitut virheet on joko korjattu, tai niiden korjaamatta jättäminen on sovittu asiakkaan kanssa.

3 Testausvälineet 3 3.1 JUnit ja HttpUnit Ohjelman osat, jotka on mahdollista yksikkötestata testataan JUnitilla [GB04]. JUnit on vapaan lähdekoodin testausympäristö, jossa on helppo kirjoittaa ja ajaa toistettavia testejä. JUnit tarjoaa muun muassa mahdollisuuden jakaa dataa eri testitapausten kesken sekä käyttöliittymän testien ajamiseen. HttpUnitia hyödynnetään servlettien ja jsp-sivujen testauksessa. HttpUnit on eritysesti tällaisten komponenttien testaamista varten kehitetty apuväline. 3.2 Loppukäyttäjä Tehtävien oikeellisuuden analysointia jouduttaneen testaamaan loppukäyttäjällä. Tätä varten muodostetaan etukäteen lopputuloksia, joiden lopputulos tunnettaan, että testien tulokset voidaan kirjata heti, eikä kirjaukseen jää epämääräisyyksiä sen suhteen, mitä tapahtui kunkin testin kohdalla. Analysoinnin päättelyluonteen vuoksi sitä ei voida kokonaan testata mekaanisesti, sillä on yhtä todennäköistä kirjoittaa virheellinen testi testaamaan ohjelman päättelyä kuin päättelyn toimia virheellisesti. 4 Testitapaukset 4.1 Komponentit Ohjelman kaikkia komponentteja testataan mahdollisimman automatisoidusti. Kaikilta osin testaaminen automatisoidusti ei ole mahdollista. Vaikka automatisoitu testaus ei ole mahdollista, komponenteille pyritään kehittämään mahdollisimman kattavia testitapauksia. Analysoinnin testauksessa on huolehdittava tarkasti testitapausten noudattamisesta ja kaikkien tilanteiden yksityiskohtaisesta dokumentoinnista ennen ja jälkeen testin suorituksen. Kaikki odottamattomat tilanteet on kirjattava testin suorituksen aikana. Näin voidaan vielä jälkikäteen tutkia oliko havaittu virhe testissä vai ohjelmistossa ilman turhaa ajanhukkaa.

4 4.2 Testitapaukset Testitapauksista kirjataan kohdekomponentti, syötteet, odotettu lopputulos ja testin suoritusmenetelmä. Testitapauksen suorituksen jälkeen kirjataan testin lopputulos. Jos suorituksessa on tapahtunut virhe, niin dokumenttiin kirjataan mahdollisesti tapahtuneen virheen korjauksen jälkeen onnistunut suoritus. 4.3 Järjestelmätestauksen testitapaukset 4.3.1 Staattisen tehtävän laatiminen Kokeillaan luoda uusi tehtävä. Uuteen tehtävän syötetään tehtävänanto, malliratkaisu, tarkastuskriteerit ja palaute. Kokeillaan: Tehtävää, jonka kriteeri on syntaksiltaan oikein Tehtävää, jonka yksi kriteeri on syntaksiltaan väärin Tehtävää, jossa ei ole kriteerejä Tehtävää, jossa on useampia kriteerejä Tehtävää, jossa verrataan malliohjelman suorituksen jälkeiseen lopputilaan Tehtävää, jossa verrataan virheellisen malliohjelman suorituksen jälkeiseen lopputilaan (malliohjelman, jota ei saada suoritettua titokoneella) 4.3.2 Dynaamisen tehtävän laatiminen Kokeillaan kaikkia tapauksia, jotka on esitetty staattisen tehtävän luomisen yhteydessä. Lisäksi kokeillaan Jokaista yksittäistä dynaamista osaa Virheellisesti määriteltyä dynaamista osaa Määrittelemättä jätettyä dynaamista osaa

5 4.3.3 Staattisen tehtävän muokkaaminen Kokeillaan muokata jo olemassa olevaa tehtävää. Kokeillaan: Muuttaa tehtävän yksi kriteeri virheelliseksi Poistaa tehtävän kriteeri Poistaa tehtävän kriteerit Muuttaa vertailu staattisesta lopputilasta simuloituun ja toisinpäin Lisätä kriteeri Lisätä virheellinen kriteeri 4.3.4 Dynaamisen tehtävän muokkaaminen Testataan kuten staattisen tehtävän muokkaamista, mutta lisäksi kokeillaan: Lisätä dynaaminen osa Muuttaa dynaamista osaa Tehdä virheellinen dynaaminen osa Tehdä duplikaatti dynaamisesta osasta 4.3.5 Tehtävän ratkaiseminen Kokeillaan ratkaista tehtävää. Kokeillaan: Antaa oikea ratkaisu Antaa tyhjä ratkaisu Antaa virheellinen ratkaisu Antaa virheellinen TTK-91 ohjelma Antaa melkein oikea ratkaisu

Kokeillaan ratkaista tehtävää jossa on kaikenlaisia kriteereitä määritelty sekä ratkaisulla joka täyttää kaikki kriteerit että ei täytä yhtään. Kokeillaan vastaavaa tehtävää myös ratkaisulla joka on osin oikea. 6 Lähteet GB04 Gamma, E. ja Beck, K., Junit testing framework, 2004. http://junit. org/. [20.10.2004]