androidandroid-espressoandroid-instrumentationtest-runner

Cannot resolve ActivityTestRule after upgrading dependencies. Unable to import ActivityTestRule


I have written instrumentation tests which was working fine, but now getting error cannot resolve ActivityTestRule error after upgrading dependencies to

androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'

I am using android support version 27.1.1

It is working fine with dependencies

androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'

Solution

  • In the most recent update of the Testing Support Library (2018-04-24), the "rules" dependency was apparently removed from the espresso-core. I'm not sure why this was done, but the release notes say this about the change:

    Fixed espresso-core POM file to not pull in "rules" dependency, instead have espresso-intents POM pull it. This should be a NoOp change for developers since espresso-intents cannot be used without espresso-core.

    You can fix this problem by adding the following dependency to app/build.gradle:

    androidTestImplementation 'com.android.support.test:rules:1.0.2'