2018 · 98 citations · 17 references
ComputingComputer ScienceComputer SystemsMachine LearningMobile ComputingMobile SystemsApplication Security TestingCrash TestingMobile Application DevelopmentReinforcement LearningSoftware TestingAndroid Application Security TestingApplication Programming Interface TestingBlack-box TestingCoverageCrash DiscoveryExperimental Data CollectionMobile App TestingMobile Application Security Testing
Android applications are used extensively around the world. Many of these applications contain potential crashes. Black-box testing of Android applications has been studied over the last decade to detect these crashes. In this paper, we propose QLearning-Based Exploration (QBE), a fully automated black-box testing methodology, which explores GUI actions using a well-known reinforcement learning technique called QLearning. QBE performs automata learning to obtain a model of the AUT, and generates replayable test suites. Specifically, QBE learns from a set of existing applications the kinds of actions that are most useful in order to reach a particular objective such as detecting crashes or increasing activity coverage. To the best of our knowledge, ours is the first machine learning based approach in Android GUI Testing. We conduct experiments on a test set of 100 AUTs obtained from the commonly used F-Droid benchmarks to show the effectiveness of QBE. We show that QBE performs better than all compared black-box tools in terms of activity coverage and number of distinct detected crashes. We make QBE and our experimental data available online.
17
Dynodroid: an input generation system for Android apps
Aravind Machiry, Rohan Tahiliani, Mayur Naik · 2013 · 704 citations · Full text
Sapienz: multi-objective automated testing for Android applications
Ke Mao, Mark Harman, Yue Jia · 2016 · 531 citations · Full text