Energy-Aware Test-Suite Minimization for Android Apps

The tool for this project is publicly available for download.

Quick Start

To run the tool, execute the file "TSM.py", using the following command (Please read the Requirement section below to ensure that you can successfully run the tool):

python TSM.py [OS]

"TSM.py" takes an argument which is the type of os you’re running the tool on it. The current version supports mac and Linux. If you are a mac user, use "mac" keyword, and if you are a Linux user, use "linux" keyword: For mac:

python TSM.py mac

For Linux:

python TSM.py linux

The output of the program shows the percent of reduction using greedy algorithm and integer programming along with the execution time information.

Requirements

In order to use this tool, you should have the following tools installed:

  1. Java 8
  2. Python 2.6
  3. Android emulator (or an Android phone) with Android Lollipop (5.0) installed
  4. Android SDK (Necessary API levels be installed for successfully running subject Apps: 7, 8, 10, 17, 18, 19, 20, 21)
  5. Lp_solve (We have included the binary of this tool in the package)
We developed the tool and ran the experiments on a Mac (with 2.2 GHz Intel Core i7 processor and 16 GB DDR3 RAM) with the given Java and Python versions. We have also checked the proper execution of the tool on a Linux machine with CentOS 6.6 operating system.

If you experience problem running the tool or want to run in on different machines, please contact Reyhan (jabbarvr@uci.edu) for assistance.

The tool is available to download from here.

Subject Apps are available to download from here.

More detailed instruction on using the tool can be found here.

[seal's logo]
[uci's logo]