TY - GEN
T1 - Automating GUI testing for android applications
AU - Hu, Cuixiong
AU - Neamtiu, Iulian
PY - 2011
Y1 - 2011
N2 - Users increasingly rely on mobile applications for computational needs. Google Android is a popular mobile platform, hence the reliability of Android applications is becoming increasingly important. Many Android correctness issues, however, fall outside the scope of traditional verification techniques, as they are due to the novelty of the platform and its GUI-oriented application construction paradigm. In this paper we present an approach for automating the testing process for Android applications, with a focus on GUI bugs. We first conduct a bug mining study to understand the nature and frequency of bugs affecting Android applications; our study finds that GUI bugs are quite numerous. Next, we present techniques for detecting GUI bugs by automatic generation of test cases, feeding the application random events, instrumenting the VM, producing log/trace files and analyzing them post-run. We show how these techniques helped to re-discover existing bugs and find new bugs, and how they could be used to prevent certain bug categories. We believe our study and techniques have the potential to help developers increase the quality of Android applications.
AB - Users increasingly rely on mobile applications for computational needs. Google Android is a popular mobile platform, hence the reliability of Android applications is becoming increasingly important. Many Android correctness issues, however, fall outside the scope of traditional verification techniques, as they are due to the novelty of the platform and its GUI-oriented application construction paradigm. In this paper we present an approach for automating the testing process for Android applications, with a focus on GUI bugs. We first conduct a bug mining study to understand the nature and frequency of bugs affecting Android applications; our study finds that GUI bugs are quite numerous. Next, we present techniques for detecting GUI bugs by automatic generation of test cases, feeding the application random events, instrumenting the VM, producing log/trace files and analyzing them post-run. We show how these techniques helped to re-discover existing bugs and find new bugs, and how they could be used to prevent certain bug categories. We believe our study and techniques have the potential to help developers increase the quality of Android applications.
KW - empirical bug studies
KW - google android
KW - gui testing
KW - mobile applications
KW - test automation
KW - test case generation
UR - http://www.scopus.com/inward/record.url?scp=79959449597&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=79959449597&partnerID=8YFLogxK
U2 - 10.1145/1982595.1982612
DO - 10.1145/1982595.1982612
M3 - Conference contribution
AN - SCOPUS:79959449597
SN - 9781450305853
T3 - Proceedings - International Conference on Software Engineering
SP - 77
EP - 83
BT - AST'11 - Proceedings of the 6th International Workshop on Automation of Software Test, Co-located with ICSE 2011
T2 - 6th International Workshop on Automation of Software Test, AST 2011, Co-located with ICSE 2011
Y2 - 22 May 2011 through 23 May 2011
ER -