App Crawler

Use the App Crawler tool, part of Jetpack, to automatically test your app without the need to write or maintain any code.

The crawler runs alongside your app, automatically issuing actions (tap, swipe, etc.) to explore the state-space of your app. The crawl terminates automatically when there are no more unique actions to perform, the app crashes, or a timeout you designate is reached.

Testing with the crawler is easy because there’s no code to write or maintain. Moreover, you can run it on a variety of devices to look for crashes, visual issues, or performance problems. Typically, it’s a good idea to use a cloud-based service like Firebase Test Lab to test multiple combinations of screen sizes and hardware configurations more easily and quickly.

Target audience

App Crawler is targeted at developers who want to ensure their app’s basic functionality with minimal configuration. In addition to purely black-box testing, the crawler can also be configured to provide specific inputs, such as login credentials or deep links.

Getting started

Before starting, make sure you have a recent version of the Android SDK. This comes with Android Studio. If you install a standalone Android SDK, make sure it includes the latest latest build tools and platform tools.

Then, download the crawler binary archive:

AndroidX Crawler 0.1
Size: 8.4 MB
SHA-256 Checksum: d0dbd7131e1b0871d19b1ec42775a773

Next, either start an emulator or connect a physical device using a USB cable. Confirm the device is connected by running the following command:

adb devices

To invoke the crawler, first extract the archive to the directory of your choice. From that directory, invoke the crawler using the following command:

java -jar crawl_launcher.jar --apk_file=path/to/my/app.apk --android_sdk=path/to/my/android/sdk

Additional resources

For more information about using App Crawler, consult the following resources.