Deckard is the simplest possible Android project that uses Robolectric for testing and Gradle to build. It has one Activity, a single Robolectric test of that Activity, and an Espresso test of that Activity.
Deckard imports easily into the latest editions of Android Studio with minimal setup.
Note: These instructions assume you have a Java 1.8 JDK installed.
To start a new Android project:
-
Install Android Studio.
-
Run the Android SDK GUI and install
API 19
andBuild-tools 21.1.2
. -
Download Deckard from GitHub:
wget https://github.com/robolectric/deckard-gradle/archive/master.zip unzip master.zip mv deckard-master my-new-project
-
In the project directory you should be able to run the Robolectric tests:
cd my-new-project ./gradlew clean test
-
You should also be able to run the Espresso tests:
./gradlew clean connectedAndroidTest
Note: Make sure to start an Emulator or connect a device first so the test has something to connect to.
-
Change the names of things from 'Deckard' to whatever is appropriate for your project. Package name, classes, build.gradle, and the AndroidManifest are good places to start.
-
Build an app. Win.
Use the latest Android Studio. The most recent updates were run against Android Studio 1.0.1 with the 'Android Studio Unit Test' plugin available from 'Browse Repositories...'.
Import the project into Android Studio by selecting 'Import Project' and selecting the project's build.gradle
. When prompted, you can just pick the default gradle wrapper.
You should now be able to DeckardActivityRobolectricTest
. Run it as a normal JUnit test - make sure to choose the JUnit test runner and not the Android one.
The Espresso tests are runnable with the Android test runner within Android Studio.