Web-sovellusten päästä päähän -testaus
Pirhonen, Mikko (2021)
Pirhonen, Mikko
2021
Tieto- ja sähkötekniikan kandidaattiohjelma - Bachelor's Programme in Computing and Electrical Engineering
Informaatioteknologian ja viestinnän tiedekunta - Faculty of Information Technology and Communication Sciences
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ä
2021-05-14
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202105034316
https://urn.fi/URN:NBN:fi:tuni-202105034316
Tiivistelmä
Web-sovelluksen toimintaympäristö on hyvin laaja. Web-sovellusten toimintaan vaikuttavat lukuisat web-standardit ja teknologiat, jotka kehittyvät koko ajan. Web-sovellukset ovat usein myös hajautettuja, eli sovelluslogiikka suoritetaan usealla laitteella. Tässä laajassa ja muuttuvassa ympäristössä web-sovelluksille erityisen tärkeää on kokonaisuuden toimivuus. Kokonaisuuden toimivuutta voidaan varmistaa automatisoidulla päästä päähän -testauksella. Päästä päähän -testauksessa web-sovellusta testataan ohjaamalla selainta käyttämään sovellusta samalla tavalla kuin loppukäyttäjä ja varmistamalla sovelluksen oikeellinen toiminta. Sillä pyritään siis varmistamaan sovelluksen oikea toiminta varsinaisessa toimintaympäristössään, kokonaisena ohjelmana.
Päästä päähän -testaukseen löytyy useita työkaluja, joilla automatisoidaan selaimen toimintaa ja varmistetaan web-sovelluksen toimivan halutulla tavalla. Testauskehysten perusteellisin ero on siinä, miten ne ohjaavat selaimen toimintaa. Tapa, jolla testauskehys ohjaa selaimia, usein määrittää myös testauskehyksen muita ominaisuuksia.
Tämän tutkielman tarkoituksena on selvittää päästä päähän -testaukseen tarkoitettujen testauskehysten vahvuudet ja heikkoudet, jotta testauskehyksen valinta uuteen web-sovellukseen helpottuisi. Verrattaviksi testauskehyksiksi valittiin neljä toteukseltaan tai testien luontitavaltaan eroavaa testauskehystä: Selenium IDE, Selenium WebDriver, Cypress sekä Playwright. Testauskehyksiä verrattiin esimerkiksi luotettavuuden, joustavuuden ja nopeuden kannalta. Vertailun avuksi kehitettiin testauskehyksillä lyhyet esimerkkitestit web-sovellukselle, jonka jälkeen kehitysprosessia arvioitiin kehysten välillä.
Vertailun tuloksena kullekkin testauskehykselle löydettiin vahvuuksia ja heikkouksia. Vanhempien testauskehysten eduksi havaittiin joustavuus, sillä niiden ohjelmointikieli- ja selaintuki oli huomattavasti parempi kuin uudemmilla työkaluilla. Uudempien testauskehysten etu vanhoihin verrattuna oli parempi luotettavuus ja paremmat työkalut testien vianetsintään. Päästä päähän -testauskehyksen valinnassa tuleekin usein valita parhaan joustavuuden ja parhaan käytettävyyden väliltä.
Päästä päähän -testaukseen löytyy useita työkaluja, joilla automatisoidaan selaimen toimintaa ja varmistetaan web-sovelluksen toimivan halutulla tavalla. Testauskehysten perusteellisin ero on siinä, miten ne ohjaavat selaimen toimintaa. Tapa, jolla testauskehys ohjaa selaimia, usein määrittää myös testauskehyksen muita ominaisuuksia.
Tämän tutkielman tarkoituksena on selvittää päästä päähän -testaukseen tarkoitettujen testauskehysten vahvuudet ja heikkoudet, jotta testauskehyksen valinta uuteen web-sovellukseen helpottuisi. Verrattaviksi testauskehyksiksi valittiin neljä toteukseltaan tai testien luontitavaltaan eroavaa testauskehystä: Selenium IDE, Selenium WebDriver, Cypress sekä Playwright. Testauskehyksiä verrattiin esimerkiksi luotettavuuden, joustavuuden ja nopeuden kannalta. Vertailun avuksi kehitettiin testauskehyksillä lyhyet esimerkkitestit web-sovellukselle, jonka jälkeen kehitysprosessia arvioitiin kehysten välillä.
Vertailun tuloksena kullekkin testauskehykselle löydettiin vahvuuksia ja heikkouksia. Vanhempien testauskehysten eduksi havaittiin joustavuus, sillä niiden ohjelmointikieli- ja selaintuki oli huomattavasti parempi kuin uudemmilla työkaluilla. Uudempien testauskehysten etu vanhoihin verrattuna oli parempi luotettavuus ja paremmat työkalut testien vianetsintään. Päästä päähän -testauskehyksen valinnassa tuleekin usein valita parhaan joustavuuden ja parhaan käytettävyyden väliltä.
Kokoelmat
- Kandidaatintutkielmat [8997]