Many automated test generation techniques have been proposed for finding crashes in Android apps. Despite recent advancement in these techniques, a study shows that Android app developers prefer reading test cases written in natural language. Meanwhile, there exist redundancies in bug reports (written in natural language) across different apps that have not been previously reused. In this paper, we propose \emph{collaborative bug finding}, a novel approach that uses similarities between different Android apps for finding relevant bug reports that help in the discovery of new bugs. Given an app under test, our approach uses interactions between programmers for deriving specialized test scenarios. We design three settings with varying degrees of interactions between programmers where each setting emulates a different real-world scenarios. Our studies of the first two settings in a software testing course show that collaborative bug finding helps students who are novice Android app testers to discover 17 new bugs. However, students admit that searching for relevant bug reports could be time-consuming. Based on students’ feedback, we introduce Bugine, an approach that automatically recommends relevant GitHub issues for a given app. Our results show that Bugine is able to find 34 new bugs. In total, collaborative bug finding helps us to find 51 new bugs, in which five have been confirmed and seven have been fixed by the developers. These results confirm our intuition that our proposed technique is useful in discovering new bugs for Android apps.
Slides (ICSE2020-collaborative-presentation.pdf) | 917KiB |
Fri 10 JulDisplayed time zone: (UTC) Coordinated Universal Time change
07:00 - 08:00 | I20-Android TestingTechnical Papers at Goguryeo Chair(s): Shing-Chi Cheung Department of Computer Science and Engineering, The Hong Kong University of Science and Technology | ||
07:00 12mTalk | Multiple-Entry Testing of Android Applications by Constructing Activity Launching ContextsTechnical Technical Papers Jiwei Yan Institute of Software, Chinese Academy of Sciences, Hao Liu Beijing University of Technology, Linjie Pan Institute of Software, Chinese Academy of Sciences, Jun Yan Institute of Software, Chinese Academy of Sciences, Jian Zhang Institute of Software, Chinese Academy of Sciences, Bin Liang Renmin University of China, China | ||
07:12 12mTalk | Time-travel Testing of Android AppsTechnical Technical Papers Zhen Dong National University of Singapore, Marcel Böhme Monash University, Lucia Cojocaru Politehnica University of Bucharest, Abhik Roychoudhury National University of Singapore, Singapore | ||
07:24 12mTalk | Collaborative Bug Finding for Android AppsTechnical Technical Papers Shin Hwei Tan Southern University of Science and Technology, Ziqiang Li Southern University of Science and Technology Media Attached File Attached | ||
07:36 12mTalk | An Empirical Assessment of Security Risks of Global Android Banking AppsTechnical Technical Papers Sen Chen Nanyang Technological University, Singapore, Lingling Fan Nanyang Technological University, Singapore, Guozhu Meng Institute of Information Engineering, Chinese Academy of Sciences, Ting Su ETH Zurich, Switzerland, Jason Minhui Xue The University of Adelaide, Yinxing Xue , Yang Liu Nanyang Technological University, Singapore, Lihua Xu New York University Shanghai Pre-print | ||
07:48 12mTalk | RoScript: A Visual Script Driven Truly Non-Intrusive Robotic Testing System for Touch Screen ApplicationsTechnical Technical Papers Ju Qian Nanjing University of Aeronautics and Astronautics, Zhengyu Shang Nanjing University of Aeronautics and Astronautics, Shuoyan Yan Nanjing University of Aeronautics and Astronautics, Yan Wang , Lin Chen Nanjing University |