Overview of test automation solutions for native cross-platform mobile applications
Bordi, Kimmo (2018)
Diplomityö
Bordi, Kimmo
2018
School of Engineering Science, Tietotekniikka
Kaikki oikeudet pidätetään.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi-fe2018101238190
https://urn.fi/URN:NBN:fi-fe2018101238190
Tiivistelmä
There are many considerations that need to be taken into account when developing mobile applications. These difficulties are pronounced in cross-platform environments where applications are developed for both Android and iOS platforms using cross-platform tools. As a part of this thesis, an overview of the currently available set of tools, which have the capability to test both native Android and iOS applications in a cross-platform manner, was written. Additionally, a cross-platform demo application was developed by using the React Native framework. A set of test cases were developed for this demo application, which were then later on executed using a cross-platform testing tool called Appium. Based on the results of the conducted research, Appium was chosen as the currently best open-source solution for cross-platform native application testing. However, it was noticed that there are challenges related to the testability of native mobile apps in a cross-platform way, that cannot be solved convincingly by solely using the Appium test tool, and thus the subject requires further study. Mobiilisovellusten kehittämiseen, ja etenkin niiden testaamiseen liittyy paljon haasteita. Nämä haasteet korostuvat monialustaympäristössä, jossa sovellusjulkaisuja tehdään sekä Android- ja iOS -alustoille samaan aikaan monialustaratkaisuja hyödyntäen. Työssä kartoitettiin tällä hetkellä saatavilla olevien testausautomaatiotyökalujen tarjontaa, jotka tukevat monen alustan samanaikaista testausta ilman, että testiskriptejä tarvitsee kirjoittaa räätälöidysti jokaiselle alustalle erikseen. Tarkempaa tarkastelua varten kehitettiin demosovellus React Native -monialustaohjelmistokehystä käyttäen. Demosovellusta varten kehitettiin testitapaukset, jotka ajettiin kartoituksen pohjalta parhaaksi valikoidulla, avoimeen lähdekoodiin perustuvalla, Appium -työkalulla. Testitulosten pohjalta havaittiin, että monialustatyökaluilla kehitettyjen natiivisovellusten testaamiseen liittyy haasteita, jotka vaativat lisätutkimusta. Pelkkä työssä käytetty Appium -työkalu ei pystynyt ratkaisemaan kaikkia näitä haasteita vakuuttavasti.