4 research outputs found

    Automating Test Case Generation for Android Applications using Model-based Testing

    Get PDF
    Testing of mobile applications (apps) has its quirks as numerous events are required to be tested. Mobile apps testing, being an evolving domain, carries certain challenges that should be accounted for in the overall testing process. Since smartphone apps are moderate in size so we consider that model-based testing (MBT) using state machines and statecharts could be a promising option for ensuring maximum coverage and completeness of test cases. Using model-based testing approach, we can automate the tedious phase of test case generation, which not only saves time of the overall testing process but also minimizes defects and ensures maximum test case coverage and completeness. In this paper, we explore and model the most critical modules of the mobile app for generating test cases to ascertain the efficiency and impact of using model-based testing. Test cases for the targeted model of the application under test were generated on a real device. The experimental results indicate that our framework reduced the time required to execute all the generated test cases by 50%. Experimental setup and results are reported herein

    Model-Based Testing in a Mobile Application

    Get PDF
    Testaus on tärkeä osa ohjelmistojen kehitystä. Ilman kattavaa testaus ei voida sanoa toimiiko kehitetty ohjelmisto oikein. Testauksen perimmäinen tarkoitus on löytää mahdollisimman paljon virheitä, jotta ne pystytään korjaamaan kehitysvaiheessa. Testausta voi tehdä perinteisesti manuaalisesti tai automaattisesti testiskriptejä hyödyntäen. Testiautomaatio on viime aikoina kehittynyt paljon ja tuottanut monia uusia ideoita sekä kehittänyt vanhoja ideoita pidemmälle. Yksi tällainen idea on mallipohjainen testaus. Työssä lähdettiin tutkimaan miten mallipohjaista testausta voisi hyödyntää ML Rahat -mobiilisovelluksen testauksessa. Mallipohjainen testaus käyttää sovelluksesta tehtäviä malleja, joiden mukaan testitapaukset luodaan automaattisesti algoritmeilla. Näitä testitapauksia voidaan ajaa automaattisesti, kun mallin pohjilta on toteutettu testit Robot Frameworkillä. Mallipohjainen testaus toisi automaatiotestauksen lähemmäksi sovelluksen kehittämisvaihetta. Kun automaatiotestaus ja automaatiotestien tekeminen ei ole lähellä kehitystä niin niiden kyky testata sovellusta kärsii eikä niistä saada kaikkea hyötyä irti. Mallipohjainen testaus toisi tähän apua, kun sovelluksen malli ja sen pohjalta toteutettavat testit tehtäisiin testaajan toimesta samanaikaisesti sovelluksen kehittämisen kanssa, samassa vaiheessa, kun manuaalitestausta tehdään. Mallipohjainen testaus toisi myös apua sovelluksen dokumentaatioon ja määritelmiin mallien muodossa. Testaajien tekemät testausmallit toimivat samalla myös dokumentaationa siitä, miten sovelluksen tulisi toimia ja mitä toimintoja sovelluksessa on missäkin vaiheessa mahdollisia. Työssä toteutettiin mallipohjainen testaus mobiilisovellukselle. Sovelluksen pohjalta tehtiin ensin mallit, joiden pohjilta luotiin automaattisesti erinäisiä testitapauksia. Mallin pohjilta toteutettiin automaatiotestit Robot Frameworkillä, joilla luotuja testitapauksia ajettiin. Lopputuloksena on kokonaisvaltainen ja kattava testimenetelmä, jolla voi testata sekä kehityksen aikaista sovellusta, että käyttää myös regressiotestauksessa. Mallipohjainen testaus vaikuttaa lupaavalta menetelmältä. Sen avulla on mahdollista tuottaa kattavat testit ja dokumentaatiota itse sovelluksen toiminnasta. Mallipohjainen testaus on hieman työläämpää kuin manuaalinen testaus tai mitä tämän hetkinen automaatiotestausprosessi on. Kuitenkin sen hyödyt ovat suuremmat kuin työmäärän kasvu, joten sen käyttöä ja kokeilua tulisi jatkaa ottamalla se mukaan kehityksen aikaiseen testaukseen

    Model-based testing of mobile systems - an empirical study on QuizUp Android app

    No full text
    We present an empirical study in which model-based testing (MBT) was applied to a mobile system: the Android client of QuizUp, the largest mobile trivia game in the world. The study shows that traditional MBT approaches based on extended finite-state machines can be used to test a mobile app in an effective and efficient way. Non-trivial defects were detected on a deployed system that has millions of users and was already well tested. The duration of the overall testing effort was of three months, including the construction of the models. Maintaining a single behavioral model for the app was key in order to test it in an efficient way
    corecore