JUnit Local Test - 'Unresolved reference: test

2020-02-15 06:53发布

问题:

Expected

Importing libraries such as androidx.test:core:1.2.0, androidx.test.ext:truth:1.2.0, com.google.truth:truth:0.44, and etc. into a local JUnit test class named ExampleUnitTest.kt.

Observed

Error

Unresolved reference: test

Implementation

ExampleUnitTest.kt

import androidx.test.core.app.ApplicationProvider.getApplicationContext
import com.google.common.truth.Truth.assertThat

回答1:

Solution

This appears to be an issue documented in the Android Testing Codelab sample app.

Within the Codelab sample build.gradle this is referred to as a known issue.

// Once https://issuetracker.google.com/127986458 is fixed this can be testImplementation
implementation "androidx.test:core:$androidXTestCoreVersion"

I refactored my app's dependency to testImplementation instead of androidTestImplementation.

testImplementation 'androidx.test:core:1.2.0'
testImplementation 'androidx.test.ext:truth:1.2.0'
testImplementation 'com.google.truth:truth:0.44'

Note - The Google documentation Set up project for AndroidX Test should be updated to reflect this issue as it currently instructs the developer to use androidTestImplementation. I have filed a documentation issue to resolve this.