Automated integration testing of Android applications

No Thumbnail Available

URL

Journal Title

Journal ISSN

Volume Title

Perustieteiden korkeakoulu | Master's thesis

Date

2024-06-17

Department

Major/Subject

Software and Service Engineering

Mcode

SCI3043

Degree programme

Master’s Programme in Computer, Communication and Information Sciences

Language

en

Pages

57 + 3

Series

Abstract

This thesis is a design science methodologies study into the benefits and limitations of software test automation for Android applications. As a part of the design science study a new test ware setup was created using Espresso and Android’s Gradle Managed Devices to automate the execution of GUI tests. The thesis follows a three-step process that is typical with design science research. The steps are “problem identification”, “solution design”, and “design evaluation”. Both quantitative and qualitative data were involved in each step. Semi-structured interviews and literature reviews as well as a single controlled experiment were used to gather the data. The biggest problems with the case company’s quality assurance process were identified as the inconsistency of the testing process, the lack of regression testing capability, and the overall negative feeling that developers felt towards testing. The thesis studies if and how these problems could be solved using test automation. The newly produced artefact had a direct positive impact on the quality of one software product of the case company. It was able to discover even previously unreported bugs. It was also found that the use of the artefact offered secondary benefits to the case company which may also have a positive impact on their quality management. On the contrary to previous research on test automation, the findings are positive.

Tämä diplomityö toteutettiin suunnittelutieteen tutkimuksena, joka tutkii ohjelmistotestauksen automatisoinnin hyötyjä ja rajoitteita Android sovellusten osalta. Osana tutkimusta luotiin uusi testausympäristö, käyttämällä Espressoa ja Androidin “Gradle Managed Devices” -virtuaalilaitteita, jonka avulla graafisen käyttöliittymän testien ajo automatisoitiin. Diplomityö seuraa kolmevaiheista prosessia, joka on tyypillinen rakenne suunnittelutieteen tutkimuksessa. Nämä vaiheet ovat “ongelman selvennys”, “ratkaisun suunnittelu ja kehitys” ja “artefaktin arviointi”. Sekä kvantitaavista, että kvalitaavista dataa kerättiin ja hyödynnettiin tutkimuksen eri vaiheissa. Dataa kerättiin rakenteeltaan puolivapaamuotoisten haastatteluiden ja kirjallisuuskatsausten, sekä yhden kontrolloidun tutkimuksen kautta. Testausprosessin johdonmukaisuuden puute, puuttuva regressiotestausvalmius ja sovelluskehittäjien yleinen negatiivinen suhtautuminen testausta kohtaan tunnistettiin isoimmiksi ongelmiksi tapaustutkimuksen kohteena toimineen yrityksen laadun varmennuksen prosessissa. Diplomityö tutkii, jos, ja kuinka testauksen automatisointi voi ratkaista kyseiset ongelmat. Suunnittelutieteen tutkimuksen osatuloksena tuotetulla artefaktilla oli suora positiivinen vaikutus tapaustutkimuksen kohteena toimineen yrityksen sovelluksen laatuun. Artefakti oli kykenevä havaitsemaan myös uusia virheitä ohjelmassa. Artefaktin käytön tunnistettiin tarjoavan myös toissijaisia etuja, jotka voivat myös epäsuorasti parantaa yrityksen laadunvalvonnan prosessia. Poiketen diplomityötä edeltävistä tutkimustuloksista, työn löydökset ovat erittäin positiivisia.

Description

Supervisor

Vanhanen, Jari

Thesis advisor

Vanhanen, Jari

Keywords

software testing, test automation, design science, GUI testing, Android applications

Other note

Citation