2023 · 40 citations · 46 references
ComputingComputer ScienceInformation TechnologyMobile SecuritySoftware EngineeringTest DevelopmentApplication Programming InterfacesMobile Application DevelopmentSoftware TestingApplication Functionality TestingApplication Programming Interface TestingAutomated Bug FindingEmpirical EvaluationFunctional CorrectnessMobile App TestingReal-world ApplicationTest Oracles
Android apps are ubiquitous and serve many aspects of our daily lives. Ensuring their functional correctness is crucial for their success. To date, we still lack a general and in-depth understanding of functional bugs, which hinders the development of practices and techniques to tackle functional bugs. To fill this gap, we conduct the first systematic study on 399 functional bugs from 8 popular open-source and representative Android apps to investigate the root causes, bug symptoms, test oracles, and the capabilities and limitations of existing testing techniques. This study took us substantial effort. It reveals several new interesting findings and implications which help shed light on future research on tackling functional bugs. Furthermore, findings from our study guided the design of a proof-of-concept differential testing tool, RegDroid, to automatically find functional bugs in Android apps. We applied RegDroid on 5 real-world popular apps, and successfully discovered 14 functional bugs, 10 of which were previously unknown and affected the latest released versions—all these 10 bugs have been confirmed and fixed by the app developers. Specifically, 10 out of these 14 found bugs cannot be found by existing testing techniques. We have made all the artifacts (including the dataset of 399 functional bugs and RegDroid) in our work publicly available at https://github.com/Android-Functional-bugs-study/home.
46
The Oracle Problem in Software Testing: A Survey
Earl T. Barr, Mark Harman, Phil McMinn et al. · IEEE Transactions on Software Engineering · 2014 · 1K citations · Full text
Dawson Engler, David Yu Chen, Seth Hallem et al. · 2001 · 747 citations
Koen Claessen, John Hughes · 2000 · 714 citations
Differential Testing for Software.
W. M. McKeeman · 1998 · 454 citations