Font Size: a A A

The Design And Implementation Of Crowdsourced Testing Requirement Generation System Driven By Android Automatic Testing

Posted on:2021-04-10Degree:MasterType:Thesis
Country:ChinaCandidate:Z B WeiFull Text:PDF
GTID:2428330647450866Subject:Engineering
Abstract/Summary:PDF Full Text Request
With the rapid development of the Mobile Internet,the quality of mobile applications has also received more and more attention.In order to solve the testing problems under the rapid iteration of mobile applications,automatic testing and crowdsourced testing have been widely used in the field of mobile application testing.However,automatic testing cannot provide comprehensive coverage of mobile applications.Crowdsourced testing also has the problems of costing tremendous effort to extract crowdsourced requirements and lacking professional crowdsourced workers.The advantages of automatic testing and crowdsourced testing are not well combined.This thesis designs and implements a crowdsourced test requirement generation system driven by Android automatic testing.The system processes the automatic test data of the target application and extracts the exceptions triggered during the test.Based on test operation sequences and screen shots,workers are guided to find exceptions in different environments by reproduction steps.Using decompilation and static analysis techniques,the types of components involved in the conditional branch statements in the source code and the windows not covered in the automatic test are extracted to guide crowdsourced workers to explore new exceptions.The system shows the overview of crowdsourced services from multiple dimensions such as the application window hierarchy model,requirements details,models and equipment,operation logs,and guidance information.The crowdsourced requirements generated by this system can be posted to the crowdsourced inspection platform and put into use to organize and conduct crowdsourced testing.The system recommends crowdsourced requirements based on the historical information of crowdsourced workers in a Top N form.In addition,the system collects and summarizes data for crowdsourced testing,and feedbacks test progress in real time,making the crowdsourced services a closed loop.This system is implemented using a separate client-server architecture.We utillize Angular as our front-end framework and Spring Boot is used as the back-end framework.The data format at both ends is unified,and the interface conforming to the RESTful API specification is used for communication.This system combines Mongo DB and Alibaba Cloud OSS storage services to save data.In addition,the entire project uses Git Lab for code hosting and version control,and is packaged through Docker container technology,which has good scalability and reduces the overhead of system deployment and maintenance.After the system was launched,10 Android open source applications were selected and controlled experiments were carried out on 15 popular mobile devices.The experimental results showed that by guiding the crowdsourced workers with our generated requirements,30% more exceptions could be triggered and 15% more coverage rate was achieved than the control group.Therefore,the system improves the overall efficiency and quality of Android crowdsourced testing.In addition,the system provides a service for generating crowdsourced requirements and accepting crowdsourced test results,improving the working efficiency of crowdsourced sponsors.After the experiment,a survey showed that more than 80% of the crowdsourced sponsors expressed a positive attitude towards this system.
Keywords/Search Tags:Android mobile application, Crowdsourced testing, Automatic testing, Crowdsourced requirement generation
PDF Full Text Request
Related items