Cannot resolve symbol InstantTaskExecutorRule

前端 未结 6 1115
一整个雨季
一整个雨季 2020-12-30 18:44

I open example code BasicRxJavaSample (from this article Room+RxJava) The main thing is there:

@Rule
public InstantTaskExecutorRule instantTaskExecutorRule          


        
相关标签:
6条回答
  • 2020-12-30 19:11

    Replace testImplementation by androidTestImplementation. So the tests on folder androidTest can have access to the library.

    dependencies {
        androidTestImplementation "androidx.arch.core:core-testing:2.1.0"
    }
    

    If you are not using androidx then use android.arch.core:core-testing:1.1.1

    0 讨论(0)
  • 2020-12-30 19:14

    for androidX migration, add

    androidTestImplementation "androidx.arch.core:core-testing:2.0.0"
    
    0 讨论(0)
  • 2020-12-30 19:15

    I think that there is a conflict in some of the linked libraries. I got around this, I used blockingGet() and blockingFirst().

    and, in the end, I used https://developer.android.com/training/testing/junit-runner.html#using-android-test-orchestrator

    androidTestUtil 'com.android.support.test:orchestrator:1.0.1'
    

    this is what you need!

    0 讨论(0)
  • 2020-12-30 19:28

    I know it's late but I would like to add one thing to this accepted answer.

    If you want to use,

    @Rule
    public InstantTaskExecutorRule instantTaskExecutorRule = 
    new InstantTaskExecutorRule();
    

    in your JUnit test case, i.e., in test folder then use following dependency, i.e, with testImplementation

    dependencies {
    testImplementation "android.arch.core:core-testing:1.0.0"
    }
    

    If you want to use InstantTaskExecutorRule for your UI or integration test cases(androidTest folder), use androidTestImplementation. that is:

    androidTestImplementation "android.arch.core:core-testing:1.0.0"

    And if you want to add for both, use androidTestImplementation & testImplementation that is:

    androidTestImplementation "android.arch.core:core-testing:1.0.0"

    testImplementation "android.arch.core:core-testing:1.0.0"

    For Android-X use below dependency:

    androidTestImplementation 'androidx.arch.core:core-testing:2.0.0'

    OR

    testImplementation 'androidx.arch.core:core-testing:2.0.0'

    0 讨论(0)
  • 2020-12-30 19:28

    Sometimes test dependency issues can be an issue of selecting the appropriate build variant, depending on your Gradle configuration. In my case, tests are configured for the debug build variant only.

    0 讨论(0)
  • 2020-12-30 19:31

    Please put this two dependencies in your gradle file,

    dependencies {
    
        // Test helpers for LiveData
        testImplementation "android.arch.core:core-testing:1.0.0"
    
        // Test helpers for Room
        testImplementation "android.arch.persistence.room:testing:1.0.0"
    }
    

    Further information please go through this link, Android Architecture components integration guide

    0 讨论(0)
提交回复
热议问题