Haku

Web-sovelluksen tehokas päästä päähän -testiautomaatio

QR-koodi

Web-sovelluksen tehokas päästä päähän -testiautomaatio

Efficient end to end test automation for web applications

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.

Tallennettuna: