/EHBDroid

EHBDroid is an effective and efficient Android Testing tool based on the idea of "event-handler-based" testing. Please cite the following paper if you use this tool: Wei Song, Xiangxing Qian, and Jeff Huang. EHBDroid: Beyond GUI Testing for Android Applications. ASE 2017.

Primary LanguageJava

EHBDorid

EHBDroid is an effective and efficient Android Testing tool based on the idea of "event-handler-based" testing. Please cite the following paper if you use this tool:

Wei Song, Xiangxing Qian, and Jeff Huang. EHBDroid: Beyond GUI Testing for Android Applications. ASE 2017.

How to run?

1. Instrument App

  • Git clone this repo

  • Import this project into IntelliJ IDEA

  • Make sure ANDROID_SDK is set

  • Setup

    • Put your-apk under EHBDroid/benchmark/
    • replace EHBDroid/src/com/app/test/AppDir#APPNAME to your-apk name
  • run EHBDroid/src/com/app/test/Main.java

Note: Currently EHBDroid only supports Java.

2. Output

The instrumented apk will be under EHBDroid/output/

3. Sign and install

  • Start an emulator/device

  • cd EHBDroid/output/, run ./test.sh(Mac or linux) or test.bat(Windows). It will sign and install the instrumented-apk on the emulator/device.

4. Explore

Exploration script is writtern by Python.

  • cd EHBScript

  • sh run.sh or python run.py

Some issues

  1. uTest, sTest and iTest on the menu represent UI event testing, service event testing and inter-app event testing.