2015-12-14 98 views
0

我遇到安卓意式浓缩咖啡测试问题。我似乎无法访问“AndroidJUnit4.class”。下面的代码给我“@RunWith(AndroidJUnit4.class)”为“无法解析符号AndroidJUnit4”。意式浓缩咖啡测试 - Android

import android.test.suitebuilder.annotation.LargeTest; 

import org.junit.Rule; 
import org.junit.Test; 
import org.junit.runner.RunWith;  

@RunWith(AndroidJUnit4.class) 
@LargeTest 
public class HelloWorldEspressoTest { 

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

    @Test 
    public void listGoesOverTheFold() { 
     onView(withText("Hello world!")).check(matches(isDisplayed())); 
    } 
} 

我知道这是关系到的build.gradle文件中的设置,但我不知道什么是错。以下是我正在使用的内容的副本。

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 23 
    buildToolsVersion "23.0.1" 

    defaultConfig { 
     applicationId "example.com.myapp" 
     minSdkVersion 22 
     targetSdkVersion 22 
     versionCode 1 
     versionName "1.0" 

     testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 
    } 
    buildTypes { 
     release { 
      minifyEnabled true 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    compile 'com.android.support:cardview-v7:23.0.1' 
    compile 'com.android.support:recyclerview-v7:23.0.1' 
    compile 'com.android.support:design:23.0.1' 
    compile 'com.android.support:appcompat-v7:23.0.1' 

    testCompile 'junit:junit:4.12' 
    androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.1' 
    androidTestCompile 'com.android.support.test:runner:0.4.1' 
    androidTestCompile 'com.android.support.test:rules:0.4' 
    androidTestCompile 'com.android.support.test.uiautomator:uiautomator-v18:2.1.2' 
    compile project(':volleylibrarygitpull') 
} 

configurations.all { 
    resolutionStrategy.force 'com.android.support:support-annotations:22.2.0' 
} 

我会很感激,如果有人能告诉我什么是错的,以便我的build.gradle文件我用咖啡测试框架。我需要支持材料设计所以后来23.0.1有cardviewrecyclerview会做一个较低的API等级。

+0

任何人有任何想法,为什么谷歌称他们的样品测试“listGoesOverTheFold”? – nAndroid

回答

3

根据https://guides.codepath.com/android/UI-Testing-with-Espresso

你试图把测试中错误的文件夹,这就是为什么Android的工作室不承认JUnit4类。阅读上面的教程以使用androidTest文件夹。

还请注意,您正在使用不同版本的模块相同的库:

androidTestCompile 'com.android.support.test:runner:0.4.1' 
androidTestCompile 'com.android.support.test:rules:0.4'