Challenge Overview
In this challenge, you need to create a Java command line application as defined in the provided TCUML that will perform automatic coverage testing of a collection of Android applications.
The overall process is implemented as a custom tool, as a Java standalone program, which performs the following high-level steps for each APK from a configured file:
-
Download of an APK file from a known web URL.
-
Instrumentation of the APK file with a specific Instrumentation Coverage Tool.
-
Installation of the instrumented APK.
-
Execution of the installed APK.
-
Collection of results generated by instrumentation.
You can read all detailed information about the requirements in the provided ADS (Application Design Specification) which is attached to the challenge forum (available on registration).
Assets attached on the challenge forum:
-
Application Design Specification
-
TCUML
-
Instrumentation Coverage Tool
-
InstrumentationTestCase Java class
If you don’t have TCUML installed on your computer, you can get it from here:
https://www.topcoder.com/tc?module=Static&d1=dev&d2=umltool&d3=description
Tech Stack Overview
-
Spring framework 5.x
-
Log4j 2.x (note that the ADS says 1.2 but you need to use 2.x)
-
Soot
-
Spring Boot 1.5.x
Feel free to ask on the challenge forum if you have any questions.