Hirviö Testausraportti I2 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 Järjestelmätestaus................................. 3 1.2 Dokumenttien katselmoinnit............................ 3 1.3 Käyttöliittymän heuristinen arviointi....................... 3 1.4 Lopputulos..................................... 3 2 Muutokset suunnitelmaan 3 2.1 Testattavat ominaisuudet............................. 3 2.2 Dokumenttien katselmoinnit............................ 4 3 Testauksen kattavuus 4 3.1 Järjestelmätestaus................................. 4 3.2 Käyttöliittymän heuristinen arviointi....................... 4 3.3 Dokumenttien katselmoinnit............................ 4 4 Testauksen tulokset 5 4.1 Järjestelmätestaus................................. 5 4.2 Käyttöliittymän heuristinen arviointi....................... 5 4.3 Dokumenttien katselmoinnit............................ 5 5 Arviointi 5 6 Avoinna olevat viat 6 6.1 Toiminnallisiin ominaisuuksiin liittyvät avoinna olevat viat.......... 6 6.2 Heuristisessa arvioinnissa havaitut avoinna olevat viat............. 7 2
1 Johdanto 1.1 Järjestelmätestaus Implementaatiokierroksella 2 Hirviö-sovellusta testattiin suunnitelmallisesti ainoastaan järjestelmätestaustasolla. Järjestelmällistä yksikkötestausta ei toteutettu, koska kierroksella toteutetut ominaisuudet olivat suurimmilta osin käyttöliittymään liittyviä toiminnallisia ominaisuuksia. Näiden ominaisuuksien erillinen yksikkötestaus nähtiin turhana ja resursseja tuhlaavana. Myöskään varsinaista integraatiotestausta ei toteutettu, koska järjestelmän varsinainen integrointi tapahtui jo implementaatiokierroksella 1. Implementaatiokierroksen 2 integrointi ja siihen liittyvä ad hoc -testaus tapahtui ominaisuus kerrallaan, ohjelmoijien itsensä toimesta. Järjestelmätestaus suoritettiin käsin käyttäen Safari, Internet Explorer ja Firefox WWWselaimia. Testit pohjautuivat dokumentoituihin testitapauksiin, sekä ad hoc -testaukseen. Kaikki järjestelmätestauksessa havaitut viat kirjattiin Bugzilla -järjestelmään. 1.2 Dokumenttien katselmoinnit Toteutuksen testauksen lisäksi implementaatiokierroksella 2 katselmoitiin epäformaalisti seuraava testaussuunnitelmassa testattavaksi ilmoitettu dokumentaatio: päivitetty vaatimusmäärittely, arkkitehtuurikuvaus ja testaussuunnitelma. Katselmoijat tuottivat dokumenttien epäkohdista vikaraportteja Bugzilla-järjestelmään. Katselmointiprosessi suoritettiin yksilötyönä, eikä sitä ohjattu tai johdettu millään tavoin. 1.3 Käyttöliittymän heuristinen arviointi Implementaatiokierroksella 2 arvioitiin heuristisesti Hirviön koko käyttöliittymä. Tarkempaa tietoa arvioinnista löytyy aiheeseen liittyvästä SEPA-päiväkirjasta. 1.4 Lopputulos Toteutuksen jakamisen, vaiheittaisen toteutuksen ja regressiotestauksen puutteen vuoksi järjestelmätestauksessa havaittiin hiukan odotettua suurempi joukko vikoja, jotka kuitenkin korjattiin kierroksen lopulliseen versioon, Hirviö I2:een. Laadunvarmistus katsoo Hirviö-sovelluksen I2-version olevan tarpeeksi vakaa luovutettavaksi asiakkaan arvioitavaksi. 2 Muutokset suunnitelmaan 2.1 Testattavat ominaisuudet Testattavien toiminnallisten ominaisuuksien listaa tarkennettiin ennen järjestelmätestausta. Lopulliset testatut ominaisuudet olivat seuraavat: F1 Opiskelijakohtaisten muistiinpanojen tallentaminen F2 Hakujen tekeminen F3a Opiskelijan tietojen tallentaminen F4 Tiedostojen tallennus F8a Raportit F17 Opiskelijan tietojen tallentaminen 3
F19 Statukset F20 Ryhmäkohtaisten muistiinpanojen selaus F21 Opiskelijakohtaisten muistiinpanojen selaus F22 Ryhmäkohtaisten muistiinpanojen haut F23 Muistiinpanojen haut F24 Opiskelijan tietojen muokkaus F25 Omien tietojen muokkaus F26 Yksinkertainen haku F27 Kalenteri 2.2 Dokumenttien katselmoinnit Implementaatiokierroksen 1 tapaan palautettavia dokumentteja ei katselmoitu ohjatusti, kuten testaussuunnitelmassa on määritelty. Katselmointi suoritettiin yksilötyönä siten, että jokaiselle katselmoitavalle dokumentille määrättiin 2 katselmoijaa, jotka raportoivat havaitsemansa virheet Bugzilla-järjestelmään. Muita merkittäviä poikkeavuuksia alkuperäiseen suunnitelmaan ei ollut. 3 Testauksen kattavuus 3.1 Järjestelmätestaus Järjestelmätestaus suoritettiin testaussuunnitelman mukaisesti. Testitapauksilla ja ad hoc - testauksella katettiin kaikki sovelluksen valmis toiminnallisuus. Testeillä tutkittiin toimivuuttaa sekä positiivisillä että negatiivisilla testitapauksilla, käsittäen tärkeimmät ekvivalenssiluokat. Järjestelmätestaukseen käytettiin aikaa noin 15 työtuntia. Implementaatiokierroksen I2 järjestelmätestauksessa luotiin joukko uusia testitapauksia I1- kierroksen testitapausten lisäksi. Uudet testitapaukset ja niihin liittyvä suoritusloki toimitetaan liitteenä. 3.2 Käyttöliittymän heuristinen arviointi Heuristinen arviointi kattoi koko Hirviö-sovelluksen version I2. Heurististiseen arviointiin käytettiin aikaa noin 10 työtuntia. Tarkempaa tietoa arvioinnista löytyy aiheeseen liittyvästä SEPA-päiväkirjasta. 3.3 Dokumenttien katselmoinnit Kaikille testaussuunnitelmassa mainituille dokumenteille osoitettiin kaksi katselmoijaa. Dokumenttien katselmointiin käytettiin aikaa noin 8 työtuntia. 4
4 Testauksen tulokset 4.1 Järjestelmätestaus Järjestelmätestauksessa löydettiin yhteensä 23 uutta vikaa, jotka jakaantuivat sovelluksen eri osa-alueisiin seuraavasti: Muistiinpanot 8 vikaa (2 kriittistä, 3 merkittävää, 3 vähäistä) Opiskelijan hallinta 10 vikaa (3 kriittistä, 6 merkittävää, 1 vähäinen) Käyttöliittymävirheet 5 vähäistä vikaa Vioista jätettiin korjaamatta 6 kappaletta (listaus liitteenä) 4.2 Käyttöliittymän heuristinen arviointi Heuristisella arvioinnilla löydettiin yhteensä 18 käyttöliittymäongelmaa, jotka jakaantuivat vakavuusluokkiin seuraavasti: 2 kriittistä ongelmaa 12 merkittävää ongelmaa 3 vähäistä ongelmaa 12 ongelmaa jätettiin korjaamatta (listaus liitteenä) 4.3 Dokumenttien katselmoinnit Katselmoinneissa löydettiin yhteensä 17 vikaa, jotka jakaantuivat katseltaviin dokumentteihin seuraavasti: Tekninen spesifikaatio 11 vikaa Testaussuunnitelma 1 vika Vaatimusmäärittely 5 vikaa Kaikki katselmoinneissa löytyneet virheet korjattiin. 5 Arviointi Järjestelmätestauksessa löydettiin odotettua enemmän vikoja. Ominaisuuksien implementoinnin järjestystä ei kontrolloitu mitenkään, jolloin sivuvaikutuksena syntyi vikoja, jotka rikkoivat jo toimivia ominaisuuksia. Tämä olisi voitu välttää järjestelmällisellä regressiotestauksella, sekä paremmalla toteutuksen organisoinnilla. Löydetyt viat priorisoitiin ja niiden korjaus suoritettiin kuitenkin hallitusti, jolloin iteraation tuloksena on vakaa sovellus, joka voidaan luovuttaa asiakkaan testattavaksi. Iteraation päätteeksi tuotettu versio I2 sisältää lähinnä käytettävyyteen liittyviä ongelmia. Näiden ongelmien ratkaisemiseksi ei ole yksikäsitteistä ratkaisua, joten ne jätetään vielä toistaiseksi avoimiksi. 5
6 Avoinna olevat viat 6.1 Toiminnallisiin ominaisuuksiin liittyvät avoinna olevat viat id vakavuus prior kuvaus 106 critical P1 Diplomityön ja sen aiheen hyväksymispäivämääriä ei ole käyttöliittymässä 89 normal P2 Muistiinpanojenselausnäkymän kautta tehdyt muutokset muistiinpanoihin eivät päivity muistiinpanojenselausnäkymään 90 normal P2 Opiskelijan lisäys (Add a new student) aiheuttaa virheilmoituksen 98 normal P2 Muutamat muistiinpanojen käsittelymetodit eivät tallenna validia käyttätunnusta Audit Trailiin 59 minor P3 Kalenterissa ylimääräinen sarake 60 minor P3 Päivämäärää ei tarkisteta riittävän tarkasti 33 normal P3 Epäonnistuneita SQL-kyselyitä ei tunnisteta 88 normal P3 Opiskelijan lisäyksestä tai tietojen muutoksesta ei tehdä lokimerkintää 11 major P3 PostgreSQLConnection ei toimi unserialize():n käytön jälkeen 42 minor P4 Käyttökielen muuttaminen ei vaikuta mihinkään 6
6.2 Heuristisessa arvioinnissa havaitut avoinna olevat viat id vakavuus prior kuvaus 70 major P1 Muistiinpanon lisäys työryhmään ei anna minkäänlaista onnistumisilmoitusta 73 major P1 Opiskelijan tietojen muokkauksessa Year ja Undergraduate status ovat epäselviä termejä 56 normal P1 Tiedostonkatselusta ei pääse takaisin hirviöön oikealla tavalla 66 normal P1 Opiskelijan tietojen katsomisessa Close on vaikea ymmärtää 75 normal P1 Opiskelijan lisäämisessä pakollisia kenttiä ei ole merkitty 82 major P2 Hakulomakkeriden jokerimerkkien tai tyhjien kenttien toimintaa ei kerrota missään 84 major P2 Profiilin editoitisivun termit Language ja Default workgroup eivät ole itsestäänselviä 31 normal P2 Show notes from -valikko voisi olla vähän selkeämpi. Active workgroup on hiukan epäselvä 65 normal P2 Kaikissa napeissa ja linkeissä saisi olla työkaluvihje selitteenä 67 normal P2 Muistiinpanon lisäys pitäisi olla myös opiskelijan tietojen katsomisessa 72 normal P2 Muistiinpanojen hallinnan kentät on nimetty liian epäselvästi 45 minor P2 Raportista ei pääse takaisin raporttisivulle 64 minor P2 Työryhmälistan pitäisi olla aakkosjärjestyksessä työkaluvalikon oman profiilin ja muistiinpanojen hakusivuilla 81 minor P2 Edistyneen hakulomakkeen termit Department ja Year eivät ole itsestäänselviä 83 minor P2 Profiilin editointisivun otsikko ei kerro että ollaan editoimassa nimenomaan omaa profiilia 85 minor P2 Profiilieditointilomakkeen resetointiin ei tarjota mahdollisuutta 86 minor P2 salasanan vaihto kaipaisi jotain ohjeistusta 87 minor P2 Tyhjän raportin virheilmoitus on hieman harhaanjohtava 30 normal P3 Archive-toiminnon tarkoitusta ei voi kovin helposti arvata 77 normal P3 Opiskelijan tiedoston lisäämisen selaa -painike on epästandardi 29 minor P3 Workgroup-termin merkitys ei ole itsestäänselvä ellei sitä tiedä etukäteen 7