Web-sovelluksen tehokas päästä päähän -testiautomaatio
Kähkönen, Ville (2017)
Kähkönen, Ville
2017
Tietotekniikan koulutusohjelma
Tieto- ja sähkötekniikan tiedekunta - Faculty of Computing and Electrical Engineering
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2017-03-08
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tty-201702081104
https://urn.fi/URN:NBN:fi:tty-201702081104
Tiivistelmä
Ohjelmiston testaaminen ei ole triviaali tehtävä. Testauksen suunnittelun ja toteutuksen laadukkuudella on merkitystä erityisesti silloin, kun testataan järjestelmiä, joiden täytyy olla toimintavarmoja. Itseään toistavan manuaalisen testaamisen vähentämiseksi on ohjelmistojen testaamiseen sovellettu testiautomaatiotyökaluja. Tässä diplomityössä käsitellään testiautomaatiota, joka toimii Internet-selaimen käyttöliittymästä käsin ja testaa sovelluksen toimintaa päästä päähän (end to end). Käyttöliittymän logiikan lisäksi myös sovelluksen taustajärjestelmien liiketoimintalogiikka on osana testattavassa kokonaisuudessa eli järjestelmää testataan kokonaisuutena. Diplomityön tarkoitus on selvittää, millaisilla parannuskeinoilla web-sovellusten päästä päähän -testiautomaatiosta olisi mahdollista saada nykyistä tehokkaampaa niin, että se olisi entistä kannattavampi laadunvarmistuskeino web-sovelluksille.
Päästä päähän -testiautomaatioon liittyviä ongelmia ja kokemuksia tutkittiin haastattelemalla sellaisia ohjelmistoalan ammattilaisia, jotka olivat työskennelleet päästä päähän -testiautomaatiota hyödyntäneissä web-sovellusprojekteissa. Haastattelujen tuloksista johdettiin parannuskeinoja, joita hyödyntämällä aiemmissa projekteissa kohdattuja ongelmia voidaan jatkossa välttää.
Tutkimuksessa havaittiin, että ongelmia aiheuttivat hitaus, epävakaus, kirjoittamiskäytännöt ja teknologiavalinnat. Hitausongelma käsitti virheen havaitsemisen, virheen korjaamisen ja testien suorittamisen hitaudesta. Näistä yhdessä aiheutui se, että sovellukseen saatettiin luoda uusia virheitä ennen kuin entisiä ehdittiin korjata. Epävakausongelman aiheuttaja oli asynkronisuuden hallinnan vaikeus ja joissakin tapauksissa ongelma testaustyökalun ja selaimen yhteistoiminnassa. Testien epävakaus laski luottamusta testien tulosta kohtaan. Muita mielenkiintoisia havaintoja tehtiin muun muassa siitä millä tavalla, kuinka paljon ja missä vaiheessa kehitystyötä testejä luotiin, kuinka syvästi järjestelmää pyrittiin testaamaan ja koettiinko päästä päähän -testiautomaatio kannattavaksi.
Diplomityö esittää keinoja, joilla haastattelututkimuksessa löytyneet ongelmat voidaan ratkaista tai ongelmien vaikutusta voidaan lievittää. Kehitysideoihin lukeutuvat muun muassa testien suorituksen nopeuttaminen, ylläpidettävyyden parantaminen, kirjoittamiskäytäntöjen kehittäminen, vakauden parantaminen, testaustasojen suhteuttaminen ja osaamisen kehittäminen.
Päästä päähän -testiautomaatioon liittyviä ongelmia ja kokemuksia tutkittiin haastattelemalla sellaisia ohjelmistoalan ammattilaisia, jotka olivat työskennelleet päästä päähän -testiautomaatiota hyödyntäneissä web-sovellusprojekteissa. Haastattelujen tuloksista johdettiin parannuskeinoja, joita hyödyntämällä aiemmissa projekteissa kohdattuja ongelmia voidaan jatkossa välttää.
Tutkimuksessa havaittiin, että ongelmia aiheuttivat hitaus, epävakaus, kirjoittamiskäytännöt ja teknologiavalinnat. Hitausongelma käsitti virheen havaitsemisen, virheen korjaamisen ja testien suorittamisen hitaudesta. Näistä yhdessä aiheutui se, että sovellukseen saatettiin luoda uusia virheitä ennen kuin entisiä ehdittiin korjata. Epävakausongelman aiheuttaja oli asynkronisuuden hallinnan vaikeus ja joissakin tapauksissa ongelma testaustyökalun ja selaimen yhteistoiminnassa. Testien epävakaus laski luottamusta testien tulosta kohtaan. Muita mielenkiintoisia havaintoja tehtiin muun muassa siitä millä tavalla, kuinka paljon ja missä vaiheessa kehitystyötä testejä luotiin, kuinka syvästi järjestelmää pyrittiin testaamaan ja koettiinko päästä päähän -testiautomaatio kannattavaksi.
Diplomityö esittää keinoja, joilla haastattelututkimuksessa löytyneet ongelmat voidaan ratkaista tai ongelmien vaikutusta voidaan lievittää. Kehitysideoihin lukeutuvat muun muassa testien suorituksen nopeuttaminen, ylläpidettävyyden parantaminen, kirjoittamiskäytäntöjen kehittäminen, vakauden parantaminen, testaustasojen suhteuttaminen ja osaamisen kehittäminen.