Robot Framework - migraatio Selenium-kirjastosta Browser-kirjastoon
Shalaby, Minna (2023)
Shalaby, Minna
2023
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2023091825976
https://urn.fi/URN:NBN:fi:amk-2023091825976
Tiivistelmä
Opinnäytetyön toimeksiantajalla käytetään testiautomaatiossa Robot Framework -ohjelmistokehystä. Sen toiminta perustuu avainsanoihin ja opinnäytetyön tekohetkellä suosituin käyttöliittymätestaukseen tarkoitettu avainsanakirjasto oli Selenium-kirjasto. Toimeksiantajalla oli se myös laajassa käytössä, mutta he olivat päättäneet siirtyä käyttämään uudempaa Browser-kirjastoa. Migraatio Selenium-kirjastosta Browser-kirjastoon päätettiin toteuttaa tekijän tiimin sovellusten testiautomaatioille vuoden 2023 kesällä. Opinnäytetyö päätettiin tehdä yhden sovelluksen testiautomaation migraatioprosessista. Tällöin oli mahdollista kuvata prosessi tarkemmin ja sisällyttää työhön kirjastojen vertailua. Opinnäytetyön lopputuotoksena oli migraation prosessikuvaus ja johtopäätökset kirjastojen vertailusta. Migraation tavoitteena oli, että sen jälkeen testiautomaatiossa ei enää käytetä Selenium-kirjastoa ja testiautomaation suorituskyky ja käytettävyys paranee. Migraation yhteydessä päätettiin samalla refaktoroida testiautomaation koodia ja rakennetta sekä poistaa mahdollisuuksien mukaan kaikki hidastukset ja odotukset testeistä.
Migraation onnistumiselle ehdottoman tärkeää oli tiedonhaku ja Browser-kirjaston mahdollisimman hyvä ymmärrys. Migraation toteutuksen työskentelytavat ja -menetelmät sekä aikataulu suunniteltiin tiimin testaajien yhteistyössä. Toimeksiantajan toimintatapojen mukaan toteutuksessa käytettiin ketterän kehityksen periaatteita. Migraatio päätettiin aloittaa harjoituskierroksella, jossa kokeiltiin ja arvioitiin suunniteltuja toteutustapoja. Harjoituskierros oli erittäin hyödyllinen ja toteutustapoja muokattiin sen oppien perusteella. Migraatio toteutettiin looginen osio kerrallaan ja samalla koodia pyrittiin refaktoroimaan. Testien ja testikokoelmien toiminta varmistettiin joka vaiheessa. Työskentelytapoja ja -menetelmiä arvioitiin jatkuvasti ja muokattiin tarvittaessa.
Browser-kirjaston suurimmat havaitut edut suhteessa Selenium-kirjastoon olivat testiympäristön lisäkerros, konteksti, joka mahdollistaa puhtaan testiympäristön avaamisen jopa kymmenen kertaa nopeammin. Browser-kirjastossa on sisäänrakennettu automaattinen elementtien ja ehtojen odotus, jonka havaittiin vähentävän testiautomaation hidastusten ja odotusten tarvetta sekä parantavan testien vakautta. Browser-kirjastolla on mahdollista yhdistää ehtojen tarkistuksia avainsanoihin, minkä arvioitiin mahdollistavan avainsanojen monipuolisen käytön pienemmällä testin rivimäärällä.
Migraation jälkeen testiautomaation suorituskyvyn keskiarvo oli noin 70 prosenttia parempi ja yhden testikokoelman suorituskyky parani jopa lähes 78 prosenttia. Browser-kirjaston ja refaktoroinnin avulla testiautomaation rivimäärä väheni 660 riviä. Toimeksiantajan edustaja oli erittäin tyytyväinen näihin tuloksiin ja haluaa opinnäytetyön tekijän esittävän ne laadunhallinnan infotilaisuudessa.
Migraation onnistumiselle ehdottoman tärkeää oli tiedonhaku ja Browser-kirjaston mahdollisimman hyvä ymmärrys. Migraation toteutuksen työskentelytavat ja -menetelmät sekä aikataulu suunniteltiin tiimin testaajien yhteistyössä. Toimeksiantajan toimintatapojen mukaan toteutuksessa käytettiin ketterän kehityksen periaatteita. Migraatio päätettiin aloittaa harjoituskierroksella, jossa kokeiltiin ja arvioitiin suunniteltuja toteutustapoja. Harjoituskierros oli erittäin hyödyllinen ja toteutustapoja muokattiin sen oppien perusteella. Migraatio toteutettiin looginen osio kerrallaan ja samalla koodia pyrittiin refaktoroimaan. Testien ja testikokoelmien toiminta varmistettiin joka vaiheessa. Työskentelytapoja ja -menetelmiä arvioitiin jatkuvasti ja muokattiin tarvittaessa.
Browser-kirjaston suurimmat havaitut edut suhteessa Selenium-kirjastoon olivat testiympäristön lisäkerros, konteksti, joka mahdollistaa puhtaan testiympäristön avaamisen jopa kymmenen kertaa nopeammin. Browser-kirjastossa on sisäänrakennettu automaattinen elementtien ja ehtojen odotus, jonka havaittiin vähentävän testiautomaation hidastusten ja odotusten tarvetta sekä parantavan testien vakautta. Browser-kirjastolla on mahdollista yhdistää ehtojen tarkistuksia avainsanoihin, minkä arvioitiin mahdollistavan avainsanojen monipuolisen käytön pienemmällä testin rivimäärällä.
Migraation jälkeen testiautomaation suorituskyvyn keskiarvo oli noin 70 prosenttia parempi ja yhden testikokoelman suorituskyky parani jopa lähes 78 prosenttia. Browser-kirjaston ja refaktoroinnin avulla testiautomaation rivimäärä väheni 660 riviä. Toimeksiantajan edustaja oli erittäin tyytyväinen näihin tuloksiin ja haluaa opinnäytetyön tekijän esittävän ne laadunhallinnan infotilaisuudessa.