首页 > 解决方案 > 我无法运行 Espresso 测试

问题描述

我对浓缩咖啡测试有疑问。当测试开始时,我总是得到这个:开始运行测试测试运行失败:

由于“java.lang.ClassNotFoundException”,检测运行失败

空的测试套件。

我已经重新启动、清理、重建项目并且仍然相同。有谁知道出了什么问题?

摇篮:

apply plugin: 'com.android.application'

android {
compileSdkVersion 28
defaultConfig {
    applicationId "com.example.daniellachacz.taskmvvm"
    minSdkVersion 22
    targetSdkVersion 28
    versionCode 1
    versionName "1.0"
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    testInstrumentationRunner "com.android.test.runner.MultiDexTestRunner"
    multiDexEnabled true

}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
dataBinding {
    enabled = true
}
compileOptions {
    sourceCompatibility = '1.8'
    targetCompatibility = '1.8'
}

}

dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
testImplementation 'junit:junit:4.12'
implementation 'com.android.support:multidex:1.0.3'

//Livedata
implementation 'android.arch.lifecycle:livedata:1.1.1'
implementation "android.arch.lifecycle:extensions:1.1.1"

//Room
implementation "android.arch.persistence.room:runtime:1.1.1"
annotationProcessor "android.arch.persistence.room:compiler:1.1.1"
implementation "android.arch.persistence.room:rxjava2:1.1.1"

//FloatingActionButton
implementation 'com.melnykov:floatingactionbutton:1.3.0'

//RecyclerView
implementation 'com.android.support:recyclerview-v7:28.0.0'
implementation 'com.android.support:cardview-v7:28.0.0'

//Espresso
androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.0'
androidTestImplementation 'androidx.test:runner:1.1.0'
androidTestImplementation 'androidx.test:rules:1.1.0'

}

测试类:

@RunWith(AndroidJUnit4.class)
 public class MainScreenTest {

@Rule
public ActivityTestRule<MainActivity> mainActivityActivityTestRule =
        new ActivityTestRule<>(MainActivity.class);

@Test
public void floatingActionButton() {
    onView(withId(R.id.floating_action_button))
            .check(matches(isDisplayed()));
}

标签: androidandroid-espressoandroid-testing

解决方案


推荐阅读