diff --git a/espresso_sample/espresso/BasicSample/app/build.gradle b/espresso_sample/espresso/BasicSample/app/build.gradle index f2fe915..2358ce6 100644 --- a/espresso_sample/espresso/BasicSample/app/build.gradle +++ b/espresso_sample/espresso/BasicSample/app/build.gradle @@ -17,13 +17,13 @@ android { defaultConfig { applicationId "com.example.android.testing.espresso.BasicSample" - minSdkVersion 12 + minSdkVersion 8 targetSdkVersion 21 versionCode 1 versionName "1.0" //testInstrumentationRunner "com.google.android.droiddriver.runner.TestRunner" - testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" + testInstrumentationRunner "io.appium.droiddriver.android_support_test.D2AndroidJUnitRunner" } packagingOptions { exclude 'LICENSE.txt' @@ -41,6 +41,8 @@ dependencies { androidTestCompile 'com.android.support.test:testing-support-lib:0.1' androidTestCompile 'com.android.support.test.espresso:espresso-core:2.0' androidTestCompile 'io.appium:droiddriver:0.9.1' + // Update this with droiddriver-android_support_test in maven before submit! + androidTestCompile project(':droiddriver-android_support_test') } tasks.withType(JavaCompile) { diff --git a/espresso_sample/espresso/BasicSample/app/src/androidTest/java/com/example/android/testing/espresso/BasicSample/ChangeTextBehaviorTest.java b/espresso_sample/espresso/BasicSample/app/src/androidTest/java/com/example/android/testing/espresso/BasicSample/ChangeTextBehaviorTest.java index ff968c5..97dfd4e 100644 --- a/espresso_sample/espresso/BasicSample/app/src/androidTest/java/com/example/android/testing/espresso/BasicSample/ChangeTextBehaviorTest.java +++ b/espresso_sample/espresso/BasicSample/app/src/androidTest/java/com/example/android/testing/espresso/BasicSample/ChangeTextBehaviorTest.java @@ -20,9 +20,6 @@ import android.support.test.espresso.action.ViewActions; import android.support.test.espresso.matcher.ViewMatchers; -// BaseDroidDriverTest extends D2ActivityInstrumentationTestCase2 extends ActivityInstrumentationTestCase2 -// test runner (set in build.gradle) -// TestRunner extends InstrumentationTestRunner -- handles droiddriver init // run tests: ./gradlew clean assemble connectedCheck // run tests quickly: ./gradlew connectedCheck @@ -51,7 +48,6 @@ public void testChangeText_sameActivity() { String expected = STRING_TO_BE_TYPED; String actual = id(R.id.textToBeChanged).getText(); - // Often flakes out with: junit.framework.ComparisonFailure: expected:<[E]spresso> but was:<[]spresso> assertEquals(expected, actual); } diff --git a/espresso_sample/espresso/BasicSample/app/src/androidTest/java/com/example/android/testing/espresso/BasicSample/DDTest.java b/espresso_sample/espresso/BasicSample/app/src/androidTest/java/com/example/android/testing/espresso/BasicSample/DDTest.java index 3f92839..e16fcfc 100644 --- a/espresso_sample/espresso/BasicSample/app/src/androidTest/java/com/example/android/testing/espresso/BasicSample/DDTest.java +++ b/espresso_sample/espresso/BasicSample/app/src/androidTest/java/com/example/android/testing/espresso/BasicSample/DDTest.java @@ -1,25 +1,19 @@ package com.example.android.testing.espresso.BasicSample; import android.app.Activity; -import android.support.test.internal.runner.lifecycle.ActivityLifecycleMonitorRegistry; -import android.support.test.runner.lifecycle.Stage; - -import com.android.support.test.deps.guava.collect.Iterables; - -import java.util.Collection; -import java.util.Iterator; import io.appium.droiddriver.UiElement; import io.appium.droiddriver.finders.By; import io.appium.droiddriver.finders.Finder; import io.appium.droiddriver.helpers.BaseDroidDriverTest; import io.appium.droiddriver.helpers.DroidDrivers; -import io.appium.droiddriver.util.ActivityUtils; import static android.support.test.espresso.Espresso.onView; import static android.support.test.espresso.matcher.ViewMatchers.withId; import static com.example.android.testing.espresso.BasicSample.CloseSoftKeyboard.closeSoftKeyboard; +// Tip: you can specify the type of driver as an am option instead of using the platform-dependent +// default DroidDriver instance. E.g. "-e driver io.appium.droiddriver.instrumentation.InstrumentationDriver". public abstract class DDTest extends BaseDroidDriverTest { protected DDTest(Class activityClass) { @@ -30,13 +24,6 @@ protected DDTest(Class activityClass) { protected void setUp() throws Exception { super.setUp(); - ActivityUtils.setRunningActivitySupplier(new ActivityUtils.Supplier() { - @Override - public Activity get() { - return Iterables.getFirst(ActivityLifecycleMonitorRegistry.getInstance().getActivitiesInStage(Stage.RESUMED), null); - } - }); - // For each test method invocation, the Activity will not actually be created // until the first time this method is called. getActivity(); diff --git a/espresso_sample/settings.gradle b/espresso_sample/settings.gradle index dc97663..84f29a3 100644 --- a/espresso_sample/settings.gradle +++ b/espresso_sample/settings.gradle @@ -1 +1,5 @@ include ':espresso:BasicSample:app' +// Delete the two lines before submit! +include(':droiddriver-android_support_test') +project(':droiddriver-android_support_test').projectDir = file('../../../aosp/droiddriver-dev/external/droiddriver/droiddriver-android_support_test') +