TY - GEN
T1 - Guided Bug Crush
T2 - 2022 CHI Conference on Human Factors in Computing Systems, CHI 2022
AU - Liu, Zhe
AU - Chen, Chunyang
AU - Wang, Junjie
AU - Huang, Yuekai
AU - Hu, Jun
AU - Wang, Qing
N1 - Publisher Copyright:
© 2022 Owner/Author.
PY - 2022/4/29
Y1 - 2022/4/29
N2 - Mobile apps are indispensable for people's daily life. Complementing with automated GUI testing, manual testing is the last line of defence for app quality. However, the repeated actions and easily missing of functionalities make manual testing time-consuming and inefficient. Inspired by the game candy crush with flashy candies as hint moves for players, we propose an approach named NaviDroid for navigating testers via highlighted next operations for more effective and efficient testing. Within NaviDroid, we construct an enriched state transition graph with the triggering actions as the edges for two involved states. Based on it, we utilize the dynamic programming algorithm to plan the exploration path, and augment the GUI with visualized hints for testers to quickly explore untested activities and avoid duplicate explorations. The automated experiments demonstrate the high coverage and efficient path planning of NaviDroid and a user study further confirms its usefulness. The NaviDroid can help us develop more robust software that works in more mission-critical settings, not only by performing more thorough testing with the same effort that has been put in before, but also by integrating these techniques into different parts of development pipeline.
AB - Mobile apps are indispensable for people's daily life. Complementing with automated GUI testing, manual testing is the last line of defence for app quality. However, the repeated actions and easily missing of functionalities make manual testing time-consuming and inefficient. Inspired by the game candy crush with flashy candies as hint moves for players, we propose an approach named NaviDroid for navigating testers via highlighted next operations for more effective and efficient testing. Within NaviDroid, we construct an enriched state transition graph with the triggering actions as the edges for two involved states. Based on it, we utilize the dynamic programming algorithm to plan the exploration path, and augment the GUI with visualized hints for testers to quickly explore untested activities and avoid duplicate explorations. The automated experiments demonstrate the high coverage and efficient path planning of NaviDroid and a user study further confirms its usefulness. The NaviDroid can help us develop more robust software that works in more mission-critical settings, not only by performing more thorough testing with the same effort that has been put in before, but also by integrating these techniques into different parts of development pipeline.
KW - Android App
KW - GUI testing
KW - Quality Assurance
KW - Software Engineering
UR - http://www.scopus.com/inward/record.url?scp=85130565325&partnerID=8YFLogxK
U2 - 10.1145/3491102.3501903
DO - 10.1145/3491102.3501903
M3 - Conference contribution
AN - SCOPUS:85130565325
T3 - Conference on Human Factors in Computing Systems - Proceedings
BT - CHI 2022 - Proceedings of the 2022 CHI Conference on Human Factors in Computing Systems
PB - Association for Computing Machinery
Y2 - 30 April 2022 through 5 May 2022
ER -