Implementing Appium device farm as a parallel solution to the VHClient based device farm
Onkalo, Jani (2025)
Kandidaatintyö
Onkalo, Jani
2025
School of Engineering Science, Tietotekniikka
Kaikki oikeudet pidätetään.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi-fe20251215119729
https://urn.fi/URN:NBN:fi-fe20251215119729
Tiivistelmä
Modern software development and CI/CD principles place high expectations on quality assurance. especially in mobile application testing, the wide variety of devices and the need to test on real physical devices create challenges for the stability of the testing infrastructure. This thesis investigates and implements the modernization of the target company's mobile testing environment. The company's previous device farm, based on VHClient and USB-over-IP technology, has proven unstable, causing random test failures ("flaky tests") and resource locking, which hinders daily development work and nightly regression runs.
The objective of this work is to solve these stability and maintenance problems by designing and implementing a new Appium based Appium Device Farm which is being introduced alongside the existing system. The research method used was Design Science Research Methodology (DSRM). A distributed server architecture was set up in the work, consisting of a centralized Hub and Nodes connected to it. Additionally, the new system is integrated programmatically to enable device management and test execution.
The result of the work was a functional device farm environment that meets the technical and qualitative requirements set for it. The new solution addresses the root causes of in-stability by eliminating the USB-over-IP connection used in device relay, thereby creating a more robust foundation for testing. The work demonstrates that transitioning to Appium based infrastructure is a technically viable solution for mitigating stability issues, although full integration into production CI/CD pipelines remains a topic for future development. Nykyaikainen ohjelmistokehitys ja CI/CD periaatteet asettavat korkeat vaatimukset laadunvarmistukselle. Erityisesti mobiilisovellusten testauksessa laaja laitevalikoima ja tarve testata aidoilla fyysisillä laitteilla luovat haasteita testausinfrastruktuurin vakaudelle. Tässä työssä tutkitaan ja toteutetaan kohdeyrityksen mobiilitestausympäristön modernisointi. Yrityksen aiempi, VHClientiin perustuva laitefarmi on osoittautunut epävakaaksi, aiheuttaen satunnaisia testien epäonnistumisia niin kutsuttuja ”flaky testejä”.
Työn tavoitteena on ratkaista nämä vakaus- ja ylläpito-ongelmat suunnittelemalla ja toteuttamalla uusi Appium-pohjainen Appium Device Farm, joka tulee vanhan järjestelmän rinnalle. Tutkimusmenetelmänä käytettiin Design Science Research menetelmää (DSRM). Työssä pystytettiin hajautettu palvelinarkkitehtuuri, joka koostuu keskitetystä Hubista ja siihen kytketyistä Nodeista. Lisäksi työssä integroidaan uusi järjestelmä osaksi testausympäristöä.
Työn tuloksena syntyi toimiva laitefarmiympäristö, joka täyttää sille asetetut tekniset ja laadulliset vaatimukset. Uusi ratkaisu parantaa testauksen luotettavuutta poistamalla laiteiden välityksessä käytetyn USB-over-IP yhteyden. Työ osoittaa, että siirtymä Appium pohjaiseen infrastruktuuriin on teknisesti perusteltu ratkaisu mobiilitestauksen vakauden parantamiseksi, vaikka täysimittainen integraatio tuotannon CI/CD-putkiin vaatii vielä jatkokehitystä.
The objective of this work is to solve these stability and maintenance problems by designing and implementing a new Appium based Appium Device Farm which is being introduced alongside the existing system. The research method used was Design Science Research Methodology (DSRM). A distributed server architecture was set up in the work, consisting of a centralized Hub and Nodes connected to it. Additionally, the new system is integrated programmatically to enable device management and test execution.
The result of the work was a functional device farm environment that meets the technical and qualitative requirements set for it. The new solution addresses the root causes of in-stability by eliminating the USB-over-IP connection used in device relay, thereby creating a more robust foundation for testing. The work demonstrates that transitioning to Appium based infrastructure is a technically viable solution for mitigating stability issues, although full integration into production CI/CD pipelines remains a topic for future development.
Työn tavoitteena on ratkaista nämä vakaus- ja ylläpito-ongelmat suunnittelemalla ja toteuttamalla uusi Appium-pohjainen Appium Device Farm, joka tulee vanhan järjestelmän rinnalle. Tutkimusmenetelmänä käytettiin Design Science Research menetelmää (DSRM). Työssä pystytettiin hajautettu palvelinarkkitehtuuri, joka koostuu keskitetystä Hubista ja siihen kytketyistä Nodeista. Lisäksi työssä integroidaan uusi järjestelmä osaksi testausympäristöä.
Työn tuloksena syntyi toimiva laitefarmiympäristö, joka täyttää sille asetetut tekniset ja laadulliset vaatimukset. Uusi ratkaisu parantaa testauksen luotettavuutta poistamalla laiteiden välityksessä käytetyn USB-over-IP yhteyden. Työ osoittaa, että siirtymä Appium pohjaiseen infrastruktuuriin on teknisesti perusteltu ratkaisu mobiilitestauksen vakauden parantamiseksi, vaikka täysimittainen integraatio tuotannon CI/CD-putkiin vaatii vielä jatkokehitystä.
