The iMPAcT tool enables automatic testing of mobile applications.

Brief Description

It combines reverse engineering and pattern identification in order to test recurring behaviour (UI Patterns) in Android mobile applications.

Download tool

If you want to use the tool, please send us an email.

Video

You can download a video with an example of an execution here:

Publications

  1. Inês Coimbra Morgado, Ana C. R. Paiva, “Mobile GUI Testing”, in Software Quality Journal, 2017 - pdf
  2. Inês Coimbra Morgado, Ana C. R. Paiva, “Impact of Execution Modes on Finding Android Failures”, Procedia Computer Science, vol. 83, pp.284-291, 2016 - pdf
  3. Inês Coimbra Morgado, Ana C. R. Paiva, “The iMPAcT Tool: Testing UI Patterns on Mobile Applications”, Automated Software Engineering (ASE), 2015 30th IEEE/ACM International Conference on, 2015 - link
  4. Inês Coimbra Morgado, Ana C. R. Paiva, “Testing Approach for Mobile Applications through Reverse Engineering of UI Patterns”, 2015 30th IEEE/ACM International Conference on Automated Software Engineering Workshop (ASEW), vol. 00, no. , pp. 42-49, 2015, doi:10.1109/ASEW.2015.11
  5. Inês Coimbra Morgado, Ana C. R. Paiva, “Test Patterns for Android Mobile Applications”, Proceedings of the 20th European Conference on Pattern Languages of Programs (EuroPLoP), Kloster Irsee in Bavaria, Germany, July, 2015 pdf
  6. Inês Coimbra Morgado, Ana C. R. Paiva, João Pascoal Faria, “Automated Pattern-Based Testing of Mobile Applications,” Quality of Information and Communications Technology (QUATIC), 2014 9th International Conference on the, Guimaraes, 2014, pp. 294-299, doi: 10.1109/QUATIC.2014.47 pdf

Installation Instructions

In order to use iMPAcT tool it is necessary to:

  • install Android SDK Build Tools, Android SDK Tools revision 22 or higher, Android SDK Plaftorm-Tools revision 22 or higher (Android 5.1 or higher)
  • install Google Repository revision 22 or higher, Android Support Repository revision 24 or higher and Android Support Library revision 23 or higher
  • install Java JDK 1.8 or higher and define Environment Variable JAVA_HOME
  • point Environment variable ANDROID_HOME to the Android SDK folder

Attention The tool is set to compile using version 23 of the SDK and 23.0.2 of the Build Tools. If you want to run with a different setting, edit the impactToolTester/app/build.graddle file so that compileSdkVersion and buildToolsVersion are correctly set.

You should create an emulator or have a device connected to the computer, running Android 5.1 or higher.

If you use a device, you must:

  • enable USB Debugging Mode
  • install Google USB Driver (in the SDK Manager)
  • update the drivers for the device (in the device manager on the control panel)
  • give authorisation (on the device) for the computer to install applications on it (a pop-up should appear on the device)

Execution Instructions

  • If you use a device, you must enable the USB Debugging Mode (the first time you need provide authorisation for the computer to install applications in your device).
  • Run impactTool.jar (double click it or run “java -jar impactTool.jar in a console)
  • If the application under test is not yet installed in the device/emulator, it is necessary to provide the corresponding apk. It will be installed, tested and uninstalled. (choose option Provide APK)
  • If the application under test is already installed, then choose option Provide Package Name and provide the name of the package of the application. This name can be found for instance with the tool uiautomatorviewer under <android-sdk-folder>/tools

The tool was tested in Windows and MacOS.

Did you find a bug? Do you have an idea for a new feature?

Please let us know here. Help us improve!

impact.txt · Last modified: 2018/07/20 22:23 by apaiva