Font Size: a A A

Testing Technology For Android Applications Based On Widget Dynamic Grouping Model

Posted on:2020-08-27Degree:MasterType:Thesis
Country:ChinaCandidate:H J GeFull Text:PDF
GTID:2428330575458029Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
Android applications are commonly used in people's daily lives.In order to ensure the quality of Android applications,the testing technology that explores the GUIs of the application automatically becomes a research hotspot.However,the increasing number of activities and GUI complexity of each Android application make the existing automated testing technology more difficult for GUI state modeling and model-based exploration.Existing testing techniques have relatively low coverage when applied to popular commercial applications.While constructing a coarse-grained model,we will miss the internal details of activity state since there are multiple different states inside each activity.While constructing a fine-grained GUI model,we will encounter the state space explosion problem in the face of complex GUIs,and thus exhaustively exploring every GUI widget in each GUI state is unscalable.Therefore,we propose an optimization technique based on the dynamic grouping model of GUI widgets.This technique builds a GUI model with a reasonable granular-ity and applies a heuristic hybrid exploration strategy based on the model.During the testing process,it continuously collects behavior feedback and dynamically adjusts the grouping model.The technique can accelerate the exploration of GUI states under the application and make up for the shortcomings of existing testing techniques.Specifically,the work of this paper mainly includes the following aspects:1.According to the characteristics of the Android GUI widgets,we propose a well-designed method of grouping widgets inside each activity.Then,we build a GUI state model with the granularity of widget group,thus avoiding the problem of state space explosion or missing GUI details that is usually encountered by model-based testing technology.2.Based on the widget grouping model,we propose a hybrid exploration strategy.The greedy strategy is adopted to preferentially explore each group,and we collect the activity and GUI state transitions of the representative members in the group as feedback to adjust the model;the reinforcement learning algorithm is used to guide the testing process to fully test the GUI state that has been explored.3.Based on the the open-source Monkey and Android Framework,we designed and implemented an automated Android testing system called WGDroid,which realizes the above widget grouping based GUI model and hybrid exploration strategy.4.We conducted experimental evaluations of the test tools WGDroid and AimDroid,Monkey and Sapienz on popular commercial applications.WGDroid has advan-tages in both coverage and the ability to detect bugs.The results demonstrate the efficiency and effectiveness of our technology.In general,the widget grouping model and the heuristic hybrid exploration strat-egy proposed in our work can make up for the shortcomings of the existing testing techniques when applied to popular complicated applications.
Keywords/Search Tags:Android GUI Testing, GUI Model, Widget Dynamic Grouping, Hybrid Exploration Strategy
PDF Full Text Request
Related items