kirancodes.me
To Proof Maintenance & Beyond!

Systematically testing background services of mobile apps

Li Lyna Zhang, Chieh-Jan Mike Liang, Yunxin Liu, Enhong Chen

Abstract

Contrary to popular belief, mobile apps can spend a large fraction of time running "hidden" as background services. And, bugs in services can translate into crashes, energy depletion, device slow-down, etc. Unfortunately, without necessary testing tools, developers can only resort to telemetries from user devices in the wild. To this end, Snowdrop is a testing framework that systematically identifies and automates background services in Android apps. Snowdrop realizes a service-oriented approach that does not assume all inter-component communication messages are explicitly coded in the app bytecode. Furthermore, to improve the completeness of test inputs generated, Snowdrop infers field values by exploiting the similarity in how developers name variables. We evaluate Snowdrop by testing 848 commercially available mobile apps. Empirical results show that Snowdrop can achieve 20.91% more code path coverage than pathwise test input generators, and 64.11% more coverage than random test input generators.

BibTeX
@inproceedings{Zhang-al:ASE17,
  author    = {Li Lyna Zhang and
               Chieh{-}Jan Mike Liang and
               Yunxin Liu and
               Enhong Chen},
  title     = {Systematically testing background services of mobile apps},
  booktitle = {ASE},
  pages     = {4--15},
  publisher = {{IEEE} Computer Society},
  year      = {2017},
}

Related papers