Automated Acceptance Testing of Desktop and Mobile Cross-Platform Applications in Continuous Integration Systems

Loading...
Thumbnail Image

URL

Journal Title

Journal ISSN

Volume Title

Perustieteiden korkeakoulu | Master's thesis

Department

Major/Subject

Mcode

SCI3042

Language

en

Pages

10+87

Series

Abstract

The cross-platform development tools introduce benefits and challenges for software organizations. The benefits of cross-platform development include the opportunity to use a common codebase for multiple platforms to allow development for multiple devices with reduced effort. However, while software developers benefit from increased productivity, software testing workload increases as more devices need to be tested. One possible solution for this increased testing workload challenge is the development of a test automation system that can be used to test multiple devices repeatedly without user intervention. This thesis studies the requirements and opportunities for developing a test automation system for testing the functionality of desktop and mobile applications using real and virtual devices. The client applications are developed for Android and Windows devices. These client applications are part of RFID systems and RFID readers play a major part in client operations. The thesis uses design science methodology to develop a model representing a UI test automation system. The empirical study implements the model and finds challenges during the implementation of the model. The implemented system is evaluated against the requirements set for the model. During the model implementation, the study found challenges specific to the case study, like preparing RFID hardware for testing, and more general challenges, such as connectivity between the devices and the test suite running on the CI system. Also, the study finds the test automation development as being a software project that can benefit from cross-platform testing tools similar to software development.

Monialustaiset kehitystyökalut tuovat etuja ja haasteita ohjelmistoorganisaatioille. Monialustaisen kehityksen etuja ovat mahdollisuus käyttää yhteistä koodikantaa useille alustoille, jotta useiden laitteiden kehittäminen voidaan tehdä pienemmällä vaivalla. Vaikka ohjelmistokehittäjät hyötyvätkin tuottavuuden kasvusta, ohjelmistotestauksen työmäärä kasvaa, kun enemmän laitteita on testattava. Yksi mahdollinen ratkaisu tähän lisääntyneeseen testauskuormitushaasteeseen on testausautomaatiojärjestelmän kehittäminen, jolla voidaan testata useita laitteita toistuvasti ilman käyttäjän toimia. Tässä opinnäytetyössä tutkitaan vaatimuksia ja mahdollisuuksia kehittää testiautomaatiojärjestelmä työpöytä- ja mobiilisovellusten toimivuuden testaamiseen todellisilla ja virtuaalisilla laitteilla. Asiakassovellukset on kehitetty Android- ja Windows-laitteille. Nämä asiakkassovellukset ovat osa RFID-järjestelmiä, ja RFID-lukijat ovat tärkeässä asemassa asiakassovellusten toiminnassa. Opinnäytetyössä kehitetään suunnittelutieteen metodologialla käyttöliittymätestiautomaatiojärjestelmää edustava malli. Empiirinen tutkimus toteuttaa mallia ja löytää haasteita mallin toteutuksen aikana. Toteutettu järjestelmä arvioidaan mallille asetettujen vaatimusten perusteella. Mallin toteutuksen aikana tutkimuksessa löydettiin tapaustutkimukselle ominaisia haasteita, kuten RFID-laitteiston valmistelu testausta varten, sekä yleisempiä haasteita, kuten laitteiden ja CI-järjestelmässä toimivan testipaketin välinen liitettävyys. Lisäksi tutkimuksessa todetaan, että testiautomaatiokehitys on ohjelmistoprojekti, joka voi hyötyä ohjelmistokehityksen kaltaisista monialustaisista testaustyökaluista.

Description

Supervisor

Fagerholm, Fabian

Thesis advisor

Tsolakou, Evisa

Other note

Citation