PATDroid: permission-aware GUI testing of Android

Alireza Sadeghi, Reyhaneh Jabbarvand, Sam Malek

Research output: Contribution to conferencePaperpeer-review

Abstract

Recent introduction of a dynamic permission system in Android, allowing the users to grant and revoke permissions after the installation of an app, has made it harder to properly test apps. Since an app’s behavior may change depending on the granted permissions, it needs to be tested under a wide range of permission combinations. At the state-of-the-art, in the absence of any automated tool support, a developer needs to either manually determine the interaction of tests and app permissions, or exhaustively re-execute tests for all possible permission combinations, thereby increasing the time and resources required to test apps. This paper presents an automated approach, called PATDroid, for efficiently testing an Android app while taking the impact of permissions on its behavior into account. PATDroid performs a hybrid program analysis on both an app under test and its test suite to determine which tests should be executed on what permission combinations. Our experimental results show that PATDroid significantly reduces the testing effort, yet achieves comparable code coverage and fault detection capability as exhaustively testing an app under all permission combinations.

Original languageEnglish (US)
Pages220-232
Number of pages13
DOIs
StatePublished - Aug 21 2017
Externally publishedYes
Event11th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering, ESEC/FSE 2017 - Paderborn, Germany
Duration: Sep 4 2017Sep 8 2017

Other

Other11th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering, ESEC/FSE 2017
Country/TerritoryGermany
CityPaderborn
Period9/4/179/8/17

Keywords

  • Access Control (Permission)
  • Android
  • Software Testing

ASJC Scopus subject areas

  • Software

Fingerprint

Dive into the research topics of 'PATDroid: permission-aware GUI testing of Android'. Together they form a unique fingerprint.

Cite this