Testaussuunnitelma Luuppi-projekti http://code.google.com/p/luuppi/ versio 1.0 Projektiryhmä: Panu Tunttunen Petri Ikävalko Mikko Kuivanen Johannes Lampela Eero Jaakonaho Kari Jussila Saila Oldén
Päiväys Versionumero Versiohistoria Tekijä Muutokset Muutosten syy 14.02.11 0.1 Saila Oldén Dokumentin rakenteen hahmottelua, testitapausten hahmottelua 18.02.11 0.2 Saila Oldén 2., 3., 4. ja 5. -lukujen kirjoittamista 21.02.11 0.3 Saila Oldén Testitapausten hahmottelua, 6., 7., 9., ja 10. lukujen kirjoittamista 24.02.11 0.4 Saila Oldén 8. luvun kirjoittamista 08.03.11 0.5 Saila Oldén 11. ja 12. -lukujen kirjoittamista 09.03.11 0.5 Saila Oldén Johdannon kirjoittamista, dokumentin viimeistelyä
Sisällysluettelo 1. Johdanto s. 1 1.1 ja kattavuus s. 1 1.2 Tuote ja ympäristö s. 1 1.3 Määritelmät, termit ja lyhenteet s. 1 1.4 Viitteet s. 1 1.5 Yleiskatsaus dokumenttiin s. 1 2. Testausympäristö s. 2 2.1 Laitteisto (hw) s. 2 2.2. Ohjelmisto (sw) s. 2 2.3 Turvallisuus s. 2 2.4 Apuvälineet (työkalut) ja data (syötteet) s. 2 3. Henkilöstö- ja koulutusvaatimukset s. 3 3.1 Henkilöstö s. 3 3.2 Koulutus, tiedot ja taidot s. 3 4. Vastuualueet s. 4 4.1 Integrointitestausryhmä s. 4 4.2 Järjestelmätestausryhmä s. 4 4.3 Muu(t) testausryhmä(t) s. 4 5. Vaadittava tulosaineisto s. 5 6. Erikoisominaisuuksia s. 6 7. Testauksen tehtäväjärjestys ja testausmenettely s. 7 7.1 Testausjärjestys s. 7 7.2 Testattavat osat s. 7 7.3 Testitapausluokat ja virheluokat s. 7 7.4 Menetelmät ja tekniikat s. 8 7.5 Kattavuus ja toistot s. 8 7.6 Rajoitukset s. 8 8. Testaustapaukset (testitapaukset) s. 9 8.1 Tietokannan testaus s. 9 8.2 Ohjelmaan liittyvien ulkopuolisten osien testaus s. 9 8.3 Käyttöliittymän testaus s. 9 8.4 Liittymien ja rajapintojen testaus s. 12 8.5 Tulostuksen testaus s. 12 8.6 Turvallisuuden testaus s. 12 8.7 Toipumisen (elpymisen) testaus s. 13 8.8 Suorituskyvyn testaus s. 13 8.9 Regressiotestaus s. 13 8.10 Asennus ja poisto s. 13 8.11 Käytettävyyden testaus s. 13 8.12 Erikoisia tapauksia s. 13 9. Testauksen kriteerit, vaatimukset ja hyväksyntä s. 14 9.1 Hyväksymiskriteerit s. 14 9.2 Hylkäämiskriteerit s. 14 9.3 Testauksen keskeyttäminen s. 14 9.4 Testauksen jatkaminen s. 14 9.5 Testauksen lopettaminen s. 14 9.6 Koodin hylkääminen s. 15 10. Testauksen riskien hallinta s. 16 10.1 Tunnistetut riskit s. 16 10.2 Riskianalyysi s. 16
11. Aikataulu ja työmäärät s. 17 11.1 Integraatiotestaus s. 17 11.2 Järjestelmätestaus s. 17 11.3 Hyväksymistestaus s. 17 12. Testauksen hyväksyntä s. 18 12.1 Testauksen analyysi s. 18 12.2 Testitapausten ja -ryhmien hyväksyntä s. 18 12.3 Koko testauksen hyväksyntä s. 18 13. Liitteet
1. JOHDANTO 1.1 ja kattavuus Tämä dokumentti sisältää Luuppi-projektin testaussuunnitelman. Testaussuunnitelma on tarkoitettu projektissa työskentelevien ja projektin asiakkaan käyttöön, ja sen tarkoitus on kuvata testaus kokonaisuudessaan. Dokumentissa esitellään käytettävä testausympäristö ja testitapaukset. Pyrkimyksenä on testata sovellukseen toteutetut osiot mahdollisimman kattavasti. 1.2 Tuote ja ympäristö Luuppi-projektin tarkoituksena on uudistaa Tampereen yliopiston matematiikan, tilastotieteen ja tietojenkäsittelytieteiden opiskelijoiden ainejärjestön eli Luuppi ry:n verkkosivut. Verkkosivuilta löytyy tietoa muun muassa Luuppi ry:stä ja sen järjestämistä tapahtumista, sekä paljon opiskeluun liittyvää informaatiota. 1.3 Määritelmät, termit ja lyhenteet Testitapaus yksittäinen testi, pienin testattava osa Testi voi sisältää useita testitapauksia Testausryhmä, testiryhmä voi sisältää useita testejä, laajin testattava osa Testikierros yksi testauskerta, jolla pyritään ajamaan läpi kaikki testitapaukset 1.4 Viitteet Luuppi-projektin muut dokumentit löytyvät verkko-osoitteesta http://code.google.com/p/luuppi/downloads/list. 1.5 Yleiskatsaus dokumenttiin Dokumentin ensimmäisessä luvussa kerrotaan lyhyesti dokumentin tarkoituksesta ja testattavana olevasta sovelluksesta. Toisessa luvussa kerrotaan testausympäristöstä, muun muassa ohjelmistoista ja laitteista. Kolmannessa luvussa esitellään testausryhmä ja testaukseen osallistuvien henkilöiden esitietovaatimuksia. Neljännessä luvussa esitellään eri testausosien vastuuhenkilöt. Viidennessä luvussa kerrotaan, mitä tietoja testiraportista löytyy. Kuudennessa luvussa on lueteltu ominaisuudet, joita testauksessa ei testata. Seitsemännessä luvussa kerrotaan testauksen tehtäväjärjestyksestä ja testausmenettelystä. Kahdeksannessa luvussa luetellaan testitapaukset. Yhdeksännessä luvussa luetellaan testauksen kriteerit, vaatimukset ja hyväksyntä. Kymmenennessä luvussa kerrotaan testaukseen liittyvistä riskeistä ja niiden hallinnasta. Yhdennessätoista luvussa on esitelty testauksen aikataulu ja työmäärät. Viimeisessä varsinaisessa eli kahdennessatoista luvussa on kerrottu testauksen hyväksynnästä. Aivan viimeisenä dokumentista löytyvät liitteet. 1
2. TESTAUSYMPÄRISTÖ Tässä luvussa kuvataan testausympäristölle asetettavat vaatimukset. 2.1 Laitteisto (hw) Testaus suoritetaan tietokoneella, jossa on oltava internet-yhteys. Koska kyseessä on web-sovellus, ei testaukseen käytettävällä tietokoneella tarvitse olla kiintolevytilaa. 2.2 Ohjelmisto (sw) Testaukseen käytettävällä tietokoneella tulee olla internet-selain. Testaaminen ei vaadi erityisasetuksia selaimeen. 2.3 Turvallisuus Testausta varten luodaan testikäyttäjätunnus ja siihen liitetty salasana. Testauksessa käytetään syötedatana testaajan itse keksimää dataa. Sovelluksessa ei vielä testausvaiheessa ole varsinaista dataa tallennettuna, joten testaus ei aiheuta riskejä asiakkaalle. Testaus ei vaadi muiden ohjelmistojen tai laitteistojen irtikytkemistä tai sulkemista. Testaus ei myöskään vaadi palomuurin tai virusohjelman erityisasetuksia. 2.4 Apuvälineet (työkalut) ja data (syötteet) Testauksessa ei käytetä apuvälineitä. Testauksessa tuotettu data tallentuu sovellukseen. 2
3. HENKILÖSTÖ- JA KOULUTUSVAATIMUKSET 3.1 Henkilöstö Pääasiallisena testaajana projektissa toimii Saila Oldén. Tarvittaessa myös muut projektiryhmän jäsenet osallistuvat testaukseen. Muun projektiryhmän ei tarvitse olla läsnä varsinaisen testauksen aikana, mutta he ovat tavoitettavissa puhelimitse ja sähköpostilla. 3.2 Koulutus, tiedot ja taidot Testauksen suorittajan tulee olla tutustunut testattavaan sovellukseen ja tietää miten se toimii. 3
4. VASTUUALUEET Testauksen suorittaa pääasiassa Saila Oldén, mutta koko projektiryhmä osallistuu testauksen suunnitteluun ja tarvittaessa myös testaukseen. Testauksessa ilmitulleiden virheiden tai väärien toimintojen korjaamiseen osallistuu koko projektiryhmä, erityisesti sovelluksen pääohjelmoijat. 4.1 Integrointitestausryhmä Integrointitestausta suoritetaan samanaikaisesti sovelluksen kehittämisen kanssa. Eri osien ohjelmoijat ja kehittäjät kiinnittävät huomiota ohjelmoimiensa osien toimivuuteen. Osia testataan myös ristiin, eli eri ohjelmoijat testaavat toistensa aikaansaannoksia. 4.2 Järjestelmätestausryhmä Testauksen suorittaa pääasiassa yksi testaaja. Uusilla testauskierroksilla testaukseen voivat osallistua myös muut projektiryhmän jäsenet. 4.3 Muu(t) testausryhmä(t) Asiakkaan puolelta saadaan henkilöitä käytettävyystestien osallistujiksi. 4
5. VAADITTAVA TULOSAINEISTO Kaikista testatuista testitapauksista täytetään testiraportti. Raporttiin täytetään kunkin testiapauksen kohdalle testin suorittaja, testauspäivämäärä ja testin tulos. Mikäli testauksessa havaitaan virhe, testiraporttiin kirjataan millaisessa tilanteessa tai millä syötteillä virhe tapahtui. Tarvittaessa virhetilanteista liitetään ruudunkaappauskuva testiraporttiin. Testausraportin malli on testaussuunnitelman liitteenä (liite 1). 5
6. ERIKOISOMINAISUUKSIA Sovelluksen ulkopuolista koodia ei testata. Myöskään sovelluksen tietoturvaa ei testata, koska se on suurimmaksi osaksi asiakkaan vastuulla. 6
7. TESTAUKSEN TEHTÄVÄJÄRJESTYS JA TESTAUSMENETTELY 7.1 Tehtäväjärjestys Testaus suoritetaan luvussa 8 esitellyssä järjestyksessä. Testaus suoritetaan sekä oikeellisilla että virheellisillä syötteillä. 7.2 Testattavat osat Kullakin testikierroksella testataan sovelluksen sen hetkinen versio. Testauksessa testataan seuraavat sovelluksen osat: linkkien toimivuus ja oikeellisuus sivuston oikeakielisyys käyttäjän sisäänkirjautuminen käyttäjän omien tietojen muokkaaminen haalariverkkokaupan toimivuus staattisten sivujen lisäys, muokkaus ja poisto, sekä sivujen järjestyksen muuttaminen uutisten lisäys, muokkaus ja poisto jäsenrekisterin hallinta (uuden jäsenen lisääminen, jäsenten tietojen muuttaminen, jäsenen poistaminen) tapahtumien lisäys, muokkaus ja poisto kokouksen lisäys, muokkaus ja poisto virheilmoitusten oikeellisuus ja informatiivisuus, sekä haalaritilausten hallinta. 7.3 Testitapausluokat ja virheluokat Testien tärkeysluokittelu on seuraava: Tärkeysluokka Selite 1. korkea Jos testiä ei läpäistä, sovellusta ei voi käyttää. 2. normaali Testin läpäisy on sovelluksen oikean toiminnan takaamiseksi välttämätöntä. 3. matala Testin läpäisy on suotavaa. Virheluokat ovat seuraavat: Vakavuusluokka Selite A. kriittinen Virhe estää järjestelmän toiminnon. B. haitallinen Toiminto ei ole oikea. C. kosmeettinen Virheestä ei aiheudu häiriötä toimintaan. 7
7.4 Menetelmät ja tekniikat Testausta varten luodaan käyttäjätunnus, ja siihen liittyvä salasana. Testaus suoritetaan asiakkaan näkökulmasta, eli siinä testataan sovelluksen käytölle tyypilliset toiminnot. Testaus suoritetaan ensin oikeellisilla, ja sen jälkeen virheellisillä syötteillä. Kaikki testauksessa ilmitulevat virheet kirjataan ylös, ja niistä kerrotaan sovelluksen ohjelmoijille. Ilmitulleista virheistä voidaan ottaa myös ruudunkaappauskuvia, jotka liitetään testiraporttiin. Testausta olisi hyvä suorittaa siihen asti, kunnes sovellus toimii halutusti, eli kunnes missään testitapauksissa ei ilmene virheitä. Aivan lopuksi oli vielä hyvä suorittaa hyväksymistestaus, jossa siis mitään virheitä tai vääriä toiminnallisuuksia ei enää pitäisi löytyä. 7.5 Kattavuus ja toistot Jos testattaessa löytyy jokin virhe, toistetaan vastaava testitilanne, jotta voidaan varmistua siitä, että virhe ei ole satunnainen, vaan johtui juurikin testattavasta toiminnosta. Jokainen toiminto testataan vähintään kaksi kertaa. Ensimmäiseen tärkeysluokkaan (korkea) kuuluvia toimintoja tulisi testata vähintään kolme kertaa. Hyväksymistestauksessa testin on mentävä läpi vähintään kaksi kertaa. 7.6 Rajoitukset Rajoitukset aiheutuvat lähinnä testaajan aikatauluista. 8
8. TESTAUSTAPAUKSET (TESTITAPAUKSET) 8.1 Tietokannan testaus Tietokantaa ei testata erikseen, vaan se on osa ohjelman toiminnallisuutta. 8.2 Ohjelmaan liittyvien ulkopuolisten osien testaus Ohjelmaan liittyviä ulkopuolisia osia ei testata. 8.3 Käyttöliittymän testaus Käyttöliittymätestauksen näkökulmana on toiminnallisuuden testaus. Tarkoituksena on testata, että sovelluksen eri osat toimivat ja näkyvät oikein. Lisäksi tarkoituksena on testata, että sovellukseen on mahdollista syöttää vain oikeanlaisia syötteitä. Myös virheilmoitusten oikeellisuus ja informatiivisuus testataan. Linkkien toimivuus ja oikeellisuus Tunniste t1 Tärkeysluokka 1 Syötteet Sivuston oikeakielisyys Tunniste t2 Tärkeysluokka 3 Syötteet Käyttäjä pystyy liikkumaan sivustolla ja selaamaan sitä. Käyttäjä pystyy liikkumaan sivustolla ja selaamaan sitä. Sivustolla oleva teksti on virheetöntä ja kieliopin mukaista. Kirjoitusvirheitä ei ole. Käyttäjä pystyy liikkumaan sivustolla ja ymmärtämään lukemansa. Virheilmoitusten oikeellisuus ja informatiivisuus Tunniste t3 Tärkeysluokka 2 Syötteet Jos käyttäjä tekee virheitä, hän pystyy korjaamaan ne virheilmoituksista saamiensa tietojen avulla. Käyttäjä pystyy käyttämään sovellusta oikein. 9
Käyttäjän omien tietojen muokkaaminen Tunniste t4 Tärkeysluokka 2 Syötteet Käyttäjä voi muokata järjestelmään tallennettuja tietojaan. Käyttäjä on sisäänkirjautunut. Käyttäjä voi muokata omia tietojaan. Haalariverkkokaupan toimivuus Tunniste t5 Tärkeysluokka 1 Syötteet Sisäänkirjautunut käyttäjä voi tilata itselleen haalarit verkkokaupasta. Käyttäjän on oltava sisäänkirjautunut. Haalarien koko. Sisäänkirjautunut käyttäjä voi tilata itselleen haalarit. Staattisten sivujen lisäys, muokkaus ja poisto Tunniste t6 Tärkeysluokka 1 Syötteet Admin-oikeuksilla sisäänkirjautunut käyttäjä voi lisätä sivustolle staattisia sivuja, sekä muokata ja poistaa niitä. Käyttäjän on oltava sisäänkirjautunut admin-tunnuksilla. Testi, Testing, Testausta vaan., Just testing. Admin-oikeuksin sisäänkirjautunut käyttäjä voi lisätä sivustolle Staattisten sivujen järjestyksen muuttaminen Tunniste t7 Tärkeysluokka 3 Syötteet Admin-oikeuksin sisäänkirjautunut käyttäjä voi muuttaa sivustolla olevien staattisten sivujen järjestystä. Käyttäjän on oltava sisäänkirjautunut admin-tunnuksilla, ja sivustolla on oltava vähintään kaksi staattista sivua. Admin-oikeuksin sisäänkirjautunut käyttäjä voi muokata sivuston staattisten sivujen järjestystä. 10
Uutisten lisäys, muokkaus ja poisto Tunniste t8 Tärkeysluokka 1 Syötteet Admin-tunnuksilla sisäänkirjautunut käyttäjä voi lisätä sivustolle uutisen, muokata uutisen sisältöä ja poistaa sen. Käyttäjän on oltava sisäänkirjautunut admin-tunnuksilla. Uutistestaus, News testing, Uutistestausta vaan., Just news testing. Admin-tunnuksilla sisäänkirjautunut käyttäjä luo sivustolle uutisen, hän voi lisäksi muokata sitä tai poistaa sen kokonaan. Jäsenrekisterin hallinta (uuden jäsenen lisääminen, jäsenten tietojen muuttaminen, jäsenen poistaminen) Tunniste t9 Tärkeysluokka 1 Admin-tunnuksilla sisäänkirjautunut käyttäjä voi hallita jäsenrekisteriä, eli lisätä sinne jäseniä, muokata heidän tietojaan, tai poistaa jäsenet kokonaan. Käyttäjän on oltava sisäänkirjautunut admin-tunnuksilla. Syötteet 00100, Testi, Jäsen, tietojenkäsittelytiede, Testikatu 1, 00100, Testilä, 0500001000, testi.jasen@testila.fi, salasana1, salasana1 Admin-tunnuksilla sisäänkirjautunut käyttäjä voi hallita jäsenrekisteriä. Tapahtumien lisäys, muokkaus ja poisto Tunniste t10 Tärkeysluokka 1 Admin-tunnuksilla sisäänkirjautunut käyttäjä voi luoda sivustolle tapahtuman, muokata sen tietoja tai poistaa koko tapahtuman. Käyttäjän on oltava sisäänkirjautunut admin-tunnuksilla. Syötteet Testaustapahtuma, Testing event, Testilä, Testilä, 1.5.2011, 12 Testaustapahtuma vaan, Just testing event, 1.4.2011, 12 Admin-tunnuksilla sisäänkirjautunut käyttäjä voi luoda sivustolle tapahtuman, muokata sen tietoja tai halutessaan poistaa koko tapahtuman. 11
Kokouksen lisäys, muokkaus ja poisto Tunniste t11 Tärkeysluokka 1 Syötteet Haalaritilausten hallinta Tunniste t12 Tärkeysluokka 2 Syötteet Admin-tunnuksilla sisäänkirjautunut käyttäjä voi luoda sivustolle kokouksen, muokata sen tietoja tai poistaa kokouksen. Käyttäjän tulee olla sisäänkirjautunut admin-tunnuksilla. Testauskokous, Testilä, 1.5.2011, 20, 30, Avataan kokous ja testataan, sitten päätetään. Admin-tunnuksilla sisäänkirjautunut käyttäjä voi luoda kokouksen, muokata sen tietoja tai poistaa kokouksen. Admin-tunnuksilla sisäänkirjautunut käyttäjä pystyy hallinoimaan haalaritilausten tilaa. Käyttäjän tulee olla sisäänkirjautunut admin-tunnuksilla, ja tietokannassa on oltava ainakin yksi haalaritilaus. Admin-tunnuksilla sisäänkirjautunut käyttäjä voi hallinnoida haalaritilauksia. 8.4 Liittymien ja rajapintojen testaus Liittymiä tai rajapintoja ei testata. 8.5 Tulostustoimintojen testaus Tulostustoimintoja ei testata. 8.6 Turvallisuuden testaus Sovelluksen tietoturva-asiat ovat asiakkaan vastuulla, joten niitä ei oteta testauksessa huomioon. Tietokanta tulee sijaitsemaan asiakkaan palvelimella, joten sen tietoturva on asiakkaan vastuulla. 12
Käyttäjän sisäänkirjautuminen Tunniste t13 Tärkeysluokka 1 Syötteet Käyttäjä pääsee kirjautumaan sisälle järjestelmään. Käyttäjällä tulee olla oikea, voimassaoleva käyttäjätunnus ja siihen liitetty salasana, jotta hän pääsee kirjautumaan sisälle järjestelmään. Käyttäjällä on oikeus sisäänkirjautua. Käyttäjätili on luotu käyttäjän käyttäjätunnukselle ja siihen liittyvälle salasanalle. käyttäjätunnus, salasana Käyttäjä pystyy kirjautumaan sovellukseen oikealla käyttäjätunnuksella ja siihen liitetyllä salasanalla. 8.7 Toipumisen (elpymisen) testaus Käyttäjän laitteiston ja internet-yhteyden oletetaan toimivan. Sovelluksen toipuminen selainviasta olisi kuitenkin hyvä testata. 8.8 Suorituskyvyn testaus Suorituskykyä voidaan jonkin verran testata käytettävyystesteissä, joissa useampi ihminen käyttää sovellusta samaan aikaan, ja suorittaa sillä samoja toimintoja. 8.9 Regressiotestaus Toteutusvaiheessa sovellusta testataan koko ajan, eli kun siihen tulee muutoksia tai päivityksiä, koko sovellus testataan saman tien uudelleen. 8.10 Asennus ja poisto Ohjelma on web-sovellus, joten sitä ei tarvitse erikseen asentaa, eikä asennusta poistaa. 8.11 Käytettävyyden testaus Sivuston käytettävyys on otettu alusta lähtien huomioon suunnittelussa. Kun tarpeeksi suuri osa sivustosta on valmis, sille tullaan suorittamaan käytettävyystestaus. Käytettävyystestauksessa sivustoa testataan sekä peruskäyttäjän, että admin-oikeuksin varustetun ylläpitäjän näkökulmasta. Käytettävyystestauksessa testataan ja käydään läpi sivuston keskeisimpiä toimintoja. Suunnitellut käytettävyystestitehtävät ovat tämän suunnitelman liitteenä (liite 2 ja liite 3). 8.12 Erikoisia tapauksia Testataan sovelluksen toimivuus erikoisilla ja väärillä syötteillä. 13
9. TESTAUKSEN KRITEERIT, VAATIMUKSET JA HYVÄKSYNTÄ 9.1 Hyväksymiskriteerit Testi hyväksytään, kun hyväksymistesti on suoritettu kaksi kertaa ilman ilmitulleita virheitä. 9.2 Hylkäämiskriteerit Yksittäinen testitapaus voidaan hylätä jos sitä ei voida suorittaa loppuun teknisistä syistä johtuen. Jos testitapaus hylätään, sitä ei käytetä seuraavalla testikierroksella. Hylätty testitapaus merkitään testiraporttiin sanalla hylätty, ja selitetään lyhyesti miksi näin on käynyt. Jos testausta ei ole tehty tässä dokumentissa määritellyllä tavalla, voidaan tuon testikierroksen tulokset hylätä. 9.3 Testauksen keskeyttäminen Testaus voidaan keskeyttää tilapäisesti, mikäli laitteistossa tai sovelluksessa ilmenee ongelma. Testausta jatketaan kun ongelma on hoidettu tai tilanne on mennyt ohi. Testaus pyritään suorittamaan aina kokonaisuutena, välittämättä pienistä virheistä. Kuitenkin jos testauksessa havaitaan jokin suurempi virhe, voidaan testaus keskeyttää, ja jatkaa kun virhe on korjattu. Testaus voidaan keskeyttää myös, jos löydettyjen virheiden määrä on hyvin suuri. Tällöin testausta jatketaan kun virheet on korjattu. Testauksen keskeyttämisestä päättää aina testaaja. 9.4 Testauksen jatkaminen Jos testauksessa on ilmennyt ongelma, tulee sovelluksen ohjelmoijien informoida testaajaa virheen korjauksesta. Korjauksen jälkeen testausta voidaan jatkaa. Kun testausta jatketaan virheestä johtuneen keskeytyksen jälkeen, voidaan jatkaa siitä kohdasta, mihin ennen virheen huomaamista ja testauksen keskeyttämistä jäätiin. Jos taas korjauksen aikana sovellukseen on tehty laajempia muutoksia, aloitetaan testaus kokonaan alusta. 9.5 Testauksen lopettaminen Testaus lopetetaan kun kaikki testikierroksen testit on suoritettu, hyväksytysti tai hylätysti. Samoin jos testauksen aikana ilmenee jokin ongelma, jota ei pystytä korjaamaan riittävän nopeasti, testaus lopetetaan. Tällöin testauksen lopettamispäätöksen tekee testaaja itse. Testaus lopetetaan lopullisesti kun hyväksymistestaus on suoritettu hyväksytysti kaksi kertaa. Testaus lopetetaan joka tapauksessa Projektityö-kurssin päätyttyä, vaikka hyväksymistestausta ei olisikaan voitu suorittaa kahta kertaa hyväksytysti. Testaus lopetetaan lopullisesti myös, jos asiakas jostain syystä haluaa sovelluksen käyttöönsä ennen sen valmistumista. 14
9.6 Koodin hylkääminen Projektiryhmä ei suorita varsinaisesti erillistä koodintestausta. Asiakas tarkistaa lähdekoodin ennen sovelluksen käyttöönottoa. 15
10. TESTAUKSEN RISKIEN HALLINTA 10.1 Tunnistetut riskit Testaukseen liittyy seuraavanlaisia riskejä: vaatimusmäärittelyn muutokset toteuttamatta jääneet toiminnot sovelluksen toiminta ei ole vaatimusmäärittelyn mukaista resurssien riittämättömyys aikatauluongelmat kommunikaatio-ongelmat ja väärinkäsitykset 10.2 Riskianalyysi Seuraavassa taulukossa on testauksen riskianalyysi. Kaaviossa on esitetty testausta koskevat riskit sekä niiden hallintaa koskevat toimenpiteet. Riskin tärkeys eli suuruus (SU) = todennäköisyys (TN) * vakavuus (VA) Riskin todennäköisyyttä on arvioitu kolmiportaisella asteikolla: 1 = epätodennäköinen, 2 = mahdollinen, ja 3 = todennäköinen. Riskin vakavuutta on samoin arvioitu kolmiportaisella asteikolla: 1 = epäoleellinen, 2 = haitallinen, ja 3 = tuhoisa. Riski TN VA SU Varasuunnitelma Vaatimusmäärittelyn muutokset Toteuttamatta jääneet toiminnot Sovelluksen toiminta ei ole vaatimusmäärittelyn mukaista 2 2 4 Jos muutoksia ehdotetaan, pohditaan, onko niitä resursseja toteuttaa. 3 2 6 Tärkeimmät ominaisuudet ovat toteutuslistalla etusijalla. 2 3 6 Neuvotellaan asiakkaan kanssa, ja yritetään parannella sovellusta vaatimusmäärittelyn mukaiseksi. Resurssien riittämättömyys 3 2 6 Tärkeimmät toiminnot ovat toteutuslistalla etusijalla. Tehdään se, mikä pystytään, ja karsitaan muissa. Aikatauluongelmat 3 2 6 Järjestellään annettuja tehtäviä uudelleen. Kommunikaatio-ongelmat ja väärinkäsitykset 2 3 6 Pidetään palaveri ja jutellaan asioista kasvokkain, jolloin väärinymmärryksen vaara vähenee. 16
11. AIKATAULU JA TYÖMÄÄRÄT 11.1 Integraatiotestaus Integraatiotestausta suoritetaan samanaikaisesti sovelluksen toteuttamisen kanssa. Testaaja aloittaa integraatiotestauksen heti, kun testattavia osioita on valmiina. Testaukseen kuluvaa aikaa on hyvin vaikea arvioida, koska se riippuu täysin esimerkiksi testauksessa löydettyjen virheiden määrästä ja niiden korjaamiseen kuluvan ajan määrästä. 11.2 Järjestelmätestaus Järjestelmätestaus aloitetaan heti, kun sovelluksen ominaisuudet on toteutettu, eikä uusia ominaisuuksia enää tule. Samoin tässä testaukseen kuluvaa aikaa on hyvin vaikea arvioida, koska se riippuu niin monista asioista (testauksessa löydettyjen virheiden määrästä ja vakavuudesta, niiden korjaamiseen kuluvasta ajasta jne.). 11.3 Hyväksymistestaus Hyväksymistestaus suoritetaan, kun sovellus on valmis tai kun Projektityö-kurssi on lopussa. Ennen hyväksymistestausta suoritetaan integraatio- ja järjestelmätestausta. Testaus Aika (h) Henkilöitä Työmäärä yht. (h) Integraatiotestaus 15 1 15 Järjestelmätestaus 10 1 10 Hyväksymistestaus 2 1 2 17
12. TESTAUKSEN HYVÄKSYNTÄ 12.1 Testauksen analyysi Testauksen analyysissä käydään läpi kuinka monta virhettä löydettiin ja korjattiin. Myös löydettyjen virheiden vakavuus tulee analysoida. Lisäksi tulisi käsitellä myös ne virheet, jotka testauksessa tulivat esille, mutta joita ei syystä tai toisesta ehditty korjaamaan. Myös testauksen suorittamista, luotettavuutta ja kattavuutta tulisi arvioida. Jos testauksessa on tullut esiin parannusehdotuksia, ne on hyvä kirjata ylös. Lopuksi arvioidaan vielä testaukseen käytetyn ajan riittävyys. 12.2 Testitapausten ja -ryhmien hyväksyntä Projektiryhmä yhdessä hyväksyy testitapaukset ja -ryhmät. Testauksen suorittaja päättää, jos testaus pitää keskeyttää väliaikaisesti (esimerkiksi luvussa 9.3 kuvattujen syiden takia). 12.3 Koko testauksen hyväksyntä Projektiryhmä yhdessä hyväksyy koko testauksen. 18
13. LIITTEET Liite 1: Testausraportti Testikierros: Testaaja: Päivämäärä: Testinro Läpi Ei läpi Mikä virhe? t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 Hylätty
Liite 2: Käytettävyystestitehtävät admin-tunnukset omaaville ylläpitäjille Kirjaudu sisään tunnuksella xxxxx, salasana xxxxxxxx. Lisää järjestelmään uusi jäsen. Tiedot voit keksiä itse, mutta kirjoita keksimäsi opiskelijanumero ja salasana muistiin tämän tehtävälapun taakse. Lisättyäsi jäsenen tiedot huomaat että kirjasit hänelle väärän pääaineen. Muuta tieto. Olet muuttanut. Kirjaa uusi osoitteesi järjestelmään. Luet lehdestä, että Kela on päättänyt nostaa asumislisän määrää. Haluat kertoa tästä luuppilaisille, joten kirjoitat asiasta uutisen. Asumislisä-uutinen osoittautuu aprillipilaksi. Luupin sivuilla on siis uutisoitu väärää tietoa. Miten toimit? Helsingissä järjestetään mielenosoitus, jossa vastustetaan lukukausimaksujen käyttöönottoa suomalaisissa kouluissa. Järjestät bussikuljetuksen Helsinkiin ja toivot että mahdollisimman moni luuppilainen lähtee mukaan. Miten toimit? Lukukausimaksuja vastustavan mielenosoituksen ajankohta on muuttunut, joten päivität uudet tiedot Luupin sivuille. Huomaat että Luupin sivuilla ei ole kerrottu yliopistoalueen ruokaloista. Haluat korjata asian, ja lisätä sivun ravintoloille. Luuppi pitää hätäkokouksen ensi viikon tiistaina. Lisää tieto kokouksesta sivuille.
Liite 3: Käytettävyystestitehtävät peruskäyttäjille Kirjaudu sisään saamillasi tunnuksilla. Olet mennyt naimisiin, joten järjestelmässä on tallennettuna vanha sukunimesi. Päivitä tietosi. Etsi sivustolta tieto siitä, kuka on tutor-vastaava. Selvitä missä Luupin toimisto sijaitsee ja milloin se on auki. Tilaa itsellesi haalarit. Etsi sivulta joku Luupin järjestämä tapahtuma, ja kerro sen tiedot.