Web User Interface Test Environments: Performance Evaluation

No Thumbnail Available
Journal Title
Journal ISSN
Volume Title
Perustieteiden korkeakoulu | Master's thesis
Ask about the availability of the thesis by sending email to the Aalto University Learning Centre oppimiskeskus@aalto.fi
Date
2016-12-12
Department
Major/Subject
Computer Science
Mcode
SCI3042
Degree programme
Master’s Programme in Computer, Communication and Information Sciences
Language
en
Pages
58 + 6
Series
Abstract
Web technologies have become the most common method of developing user interfaces in the wake of the World Wide Web’s success. As in all software development, also user interfaces have to be tested throughout the development process. The significance of thorough testing has increased also because of the recent trend of transferring logic from servers to client applications. Web environment is also very diverse. Many implementation options exist and their combinations might cause compatibility issues. Testing ensures the quality of the product code at the expense of resources. Related resources are the computing cycles, and most importantly, time. Writing and maintaining test cases take their share but the most of it is spent on running the test cases in regression testing. In particular, when new code is integrated frequently in small pieces. In this thesis, I compare Web user interface testing frameworks, libraries and their combinations. The goal is to find the fastest solutions, while also maintaining test reliability and minimizing development effort. The study shows that there are plenty of options to choose from, but Intern and Selenium are the most flexible and effective ones for implementing functional tests for websites. Few of the other evaluated candidates have other applications in Web scraping, browser automation or unit testing.

Web-teknologiat ovat Webin suosion vanavedessä yleistyneet maailman yleisimmäksi graafisten käyttöliittymien toteutustyökaluiksi. Kuten ohjelmistokehityksessä yleensä, myös käyttöliittymät vaativat jatkuvaa testausta kehitysprosessin aikana. Viime aikainen trendi siirtää logiikkaa palvelimilta Web-sivuille on kasvattanut testauksen tarvetta. Web on hyvin monimuotoinen ympäristö, ja monet toteutusvaihtoehdot ja niiden yhdistelmät voivat johtaa yhteensopivuusongelmiin. Testauksella varmistetaan tuotteen laatu resurssien kustannuksella. Testaus kuluttaa esimerkiksi tietokoneiden prosessointisyklejä ja ennen kaikkea aikaa. Testitapausten kirjoittaminen ja ylläpitäminen vievät osansa ajasta, mutta suurin osa ajasta menee testisarjojen ajamiseen regressiotestauksessa. Erityisesti, kun uutta koodia integroidaan usein pienissä osissa. Tässä työssä vertailen Web-käyttöliittymien testaukseen tarkoitettuja sovelluskehyksiä, kirjastoja ja niiden yhdistelmiä. Tavoitteena on löytää nopein vaihtoehto, mutta samalla varmistaa testien luotettavuus ja minimoida niiden ylläpitämiseksi tehty työ. Tulokset osoittavat, että erilaisia vaihtoehtoja on paljon, mutta Intern ja Selenium ovat niistä joustavimmat ja tehokkaimmat Web-käyttöliittymien toiminnalliseen testaukseen. Osa muista kandidaateista sopii paremmin muihin tarkoituksiin, kuten selainautomaatioon, yksikkötestaukseen tai Webin haravointiin.
Description
Supervisor
Vuorimaa, Petri
Thesis advisor
Tilander, Sami
Keywords
JavaScript, Web user interface, functional testing, performance
Other note
Citation