Automaatiotestauksen kehittäminen selainpohjaisessa sovelluksessa
Luoma-aho, Sami (2022)
Luoma-aho, Sami
2022
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-2022082619647
https://urn.fi/URN:NBN:fi:amk-2022082619647
Tiivistelmä
Opinnäytetyön toimeksiantajana toimi Pinja Digital Oy, joka on osa Pinja-konsernia. Pinjan yksi tuotteista Once by Pinja on toimitusketjun hallintajärjestelmä, joka on käytössä muun muassa energiantuotantolaitoksissa ja kiertotalousalan yrityksissä. Toimeksiantajalle on tarve automaatiotestauksen kehittämiselle kyseisen järjestelmän Oncenet-sovellukseen. Automaatiotestauksella pyritään osaltaan vaikuttamaan tuotteen laatuun.
Opinnäytetyön kehittämistehtävän tavoitteena oli luoda pohja Oncenet-sovelluksen automaatiotestausta varten Cypress-kirjastoa käyttäen sekä rakentaa keskeisimmät automaatiotestitapaukset regressiotestauksen tarpeisiin. Samalla tuli selvittää automaatiotestitapausten ylläpidettävyyteen vaikuttavia seikkoja ja sitä millaiset regressiotestitapaukset soveltuvat automaatiotestaukseen. Kehittämistehtävän aineistona toimivat kirjallisuuslähteet sekä verkkolähteet.
Kehittämistehtävä toteutettiin luomalla ensin testausympäristö toimeksiantajan virtualisointi- ja paikallisympäristöön. Tutkimuslähteitä apuna käyttäen luotiin pohja Cypress-automaatiotestaukselle ja tämän jälkeen automaatiotestejä regressiotestausta varten. Yksittäisten automaatiotestien riippumattomuus, yksinkertaisuus ja resilienssi muutoksille oli tärkeää testien ylläpidettävyyden kannalta. Lisäksi selvitettiin, mikä resilienssiin vaikuttaa. Sen sijaan yksiselitteistä vastausta siihen, millaiset regressiotestit tulisi automatisoida, ei löydetty.
Automaatiotestauksen kehittäminen selainpohjaiseen sovellukseen ei teknisesti ole vaativaa. Haastavampaa on luoda automaatiotestejä, joita myös vuosien päästä voidaan käyttää ja jotka ovat riittävän yksinkertaisia ylläpitää. Haastavaa on myös valita oikeat automatisoitavat testit ja luoda kokonaiskuva testauksesta, sisältäen testauksen eri tyypit ja tasot, jotta testauksen tavoitteissa päästään suunnitellulle tasolle.
Opinnäytetyön kehittämistehtävän tavoitteena oli luoda pohja Oncenet-sovelluksen automaatiotestausta varten Cypress-kirjastoa käyttäen sekä rakentaa keskeisimmät automaatiotestitapaukset regressiotestauksen tarpeisiin. Samalla tuli selvittää automaatiotestitapausten ylläpidettävyyteen vaikuttavia seikkoja ja sitä millaiset regressiotestitapaukset soveltuvat automaatiotestaukseen. Kehittämistehtävän aineistona toimivat kirjallisuuslähteet sekä verkkolähteet.
Kehittämistehtävä toteutettiin luomalla ensin testausympäristö toimeksiantajan virtualisointi- ja paikallisympäristöön. Tutkimuslähteitä apuna käyttäen luotiin pohja Cypress-automaatiotestaukselle ja tämän jälkeen automaatiotestejä regressiotestausta varten. Yksittäisten automaatiotestien riippumattomuus, yksinkertaisuus ja resilienssi muutoksille oli tärkeää testien ylläpidettävyyden kannalta. Lisäksi selvitettiin, mikä resilienssiin vaikuttaa. Sen sijaan yksiselitteistä vastausta siihen, millaiset regressiotestit tulisi automatisoida, ei löydetty.
Automaatiotestauksen kehittäminen selainpohjaiseen sovellukseen ei teknisesti ole vaativaa. Haastavampaa on luoda automaatiotestejä, joita myös vuosien päästä voidaan käyttää ja jotka ovat riittävän yksinkertaisia ylläpitää. Haastavaa on myös valita oikeat automatisoitavat testit ja luoda kokonaiskuva testauksesta, sisältäen testauksen eri tyypit ja tasot, jotta testauksen tavoitteissa päästään suunnitellulle tasolle.