1.- Gradle dependencies – global build.gradle
buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:2.1.0' classpath 'com.neenbedankt.gradle.plugins:android-apt:1.4' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { jcenter() maven { url "https://jitpack.io" } } }
2.- Gradle dependencies – app/build.gradle
defaultConfig { applicationId "..." minSdkVersion 15 testInstrumentationRunner 'android.support.test.runner.AndroidJUnitRunner' } dependencies { // ... testCompile 'junit:junit:4.12' androidTestCompile 'com.google.dexmaker:dexmaker:1.2' androidTestCompile('com.google.dexmaker:dexmaker-mockito:1.2') { exclude group: 'org.hamcrest', module: 'hamcrest-core' } androidTestCompile 'com.android.support.test:runner:0.4.1' androidTestCompile 'com.android.support.test:rules:0.4.1' androidTestCompile 'org.mockito:mockito-core:1.10.19' androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.1') { exclude group: 'javax.inject', module: 'javax.inject' exclude group: 'com.squareup', module: 'javawriter' } androidTestCompile('com.android.support.test.espresso:espresso-contrib:2.2.1') { exclude module: 'support-annotations' exclude module: 'recyclerview-v7' exclude module: 'support-v4' } androidTestCompile('com.android.support.test.espresso:espresso-intents:2.2.1') testCompile "org.mockito:mockito-core:1.9.5" testCompile 'org.mockito:mockito-all:1.9.5' } configurations.all { resolutionStrategy.force 'com.android.support:support-annotations:23.0.1' }
3.- Sample test (androidTest/com/package/name folder)
@RunWith(AndroidJUnit4.class) @LargeTest public class IssuesActivityTest { @Rule public IntentsTestRule<IssuesActivity> activityRule = new IntentsTestRule<>(IssuesActivity.class, true, false); @Test public void shouldDisplayToolbarOnStart() { startActivity(); onView(withId(R.id.toolbar)).check(matches(isDisplayed())); } private IssuesActivity startActivity() { return activityRule.launchActivity(null); } }
And that’s all folks