Barista: A Technique for Recording, Encoding, and Running Platform Independent Android Tests

Mattia Fazzini, Eduardo Noronha De A. Freitas, Shauvik Roy Choudhary, Alessandro Orso

Research output: Chapter in Book/Report/Conference proceedingConference contribution

48 Scopus citations

Abstract

Because mobile apps are extremely popular and often mission critical nowadays, companies invest a great deal of resources in testing the apps they provide to their customers. Testing is particularly important for Android apps, which must run on a multitude of devices and operating system versions. Unfortunately, as we confirmed in many interviews with quality assurance professionals, app testing is today a very human intensive, and therefore tedious and error prone, activity. To address this problem, and better support testing of Android apps, we propose a new technique that allows testers to easily create platform independent test scripts for an app and automatically run the generated test scripts on multiple devices and operating system versions. The technique does so without modifying the app under test or the runtime system, by (1) intercepting the interactions of the tester with the app and (2) providing the tester with an intuitive way to specify expected results that it then encode as test oracles. We implemented our technique in a tool named Barista and used the tool to evaluate the practical usefulness and applicability of our approach. Our results show that Barista (1) can faithfully encode user defined test cases as test scripts with built-in oracles that can run on multiple platforms and (2) outperforms two popular tools with similar functionality. Barista and our experimental infrastructure are publicly available.

Original languageEnglish (US)
Title of host publicationProceedings - 10th IEEE International Conference on Software Testing, Verification and Validation, ICST 2017
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages149-160
Number of pages12
ISBN (Electronic)9781509060313
DOIs
StatePublished - May 15 2017
Externally publishedYes
Event10th IEEE International Conference on Software Testing, Verification and Validation, ICST 2017 - Tokyo, Japan
Duration: Mar 13 2017Mar 17 2017

Publication series

NameProceedings - 10th IEEE International Conference on Software Testing, Verification and Validation, ICST 2017

Conference

Conference10th IEEE International Conference on Software Testing, Verification and Validation, ICST 2017
Country/TerritoryJapan
CityTokyo
Period3/13/173/17/17

Bibliographical note

Funding Information:
This work was partially supported by the National Science Foundation under grants CCF-1453474, CCF- 1564162, CCF-1320783, and CCF-1161821, and by funding from Google, IBM Research, and Microsoft Research.

Publisher Copyright:
© 2017 IEEE.

Keywords

  • Android testing
  • Automated testing

Fingerprint

Dive into the research topics of 'Barista: A Technique for Recording, Encoding, and Running Platform Independent Android Tests'. Together they form a unique fingerprint.

Cite this