From source code to test cases: A comprehensive benchmark for resource leak detection in Android apps

Summary Android apps share resources, such as sensors, cameras, and Global Positioning System, that are subject to specific usage policies whose correct implementation is left to programmers. Failing to satisfy these policies may cause resource leaks, that is, apps may acquire but never release reso...

Full description

Saved in:
Bibliographic Details
Published inSoftware, practice & experience Vol. 49; no. 3; pp. 540 - 548
Main Authors Riganelli, Oliviero, Micucci, Daniela, Mariani, Leonardo
Format Journal Article
LanguageEnglish
Published England Wiley Subscription Services, Inc 01.03.2019
John Wiley and Sons Inc
Subjects
Online AccessGet full text
ISSN0038-0644
1097-024X
1097-024X
DOI10.1002/spe.2672

Cover

More Information
Summary:Summary Android apps share resources, such as sensors, cameras, and Global Positioning System, that are subject to specific usage policies whose correct implementation is left to programmers. Failing to satisfy these policies may cause resource leaks, that is, apps may acquire but never release resources. This might have different kinds of consequences, such as apps that are unable to use resources or resources that are unnecessarily active wasting battery. Researchers have proposed several techniques to detect and fix resource leaks. However, the unavailability of public benchmarks of faulty apps makes comparison between techniques difficult, if not impossible, and forces researchers to build their own data set to verify the effectiveness of their techniques (thus, making their work burdensome). The aim of our work is to define a public benchmark of Android apps affected by resource leaks. The resulting benchmark, called AppLeak, is publicly available on GitLab and includes faulty apps, versions with bug fixes (when available), test cases to automatically reproduce the leaks, and additional information that may help researchers in their tasks. Overall, the benchmark includes a body of 40 faults that can be exploited to evaluate and compare both static and dynamic analysis techniques for resource leak detection.
Bibliography:ObjectType-Article-1
SourceType-Scholarly Journals-1
ObjectType-Feature-2
content type line 14
content type line 23
ISSN:0038-0644
1097-024X
1097-024X
DOI:10.1002/spe.2672