美文网首页
Android 单元测试——Espresso 设置说明

Android 单元测试——Espresso 设置说明

作者: 孤独狂饮 | 来源:发表于2018-01-22 17:44 被阅读54次

这里简单介绍以下 Espresso 的 设置

设置测试环境

测试的时候,为了避免影响,建议在开发者设置里面关闭系统动画


WX20180122-174423@2x.png

添加 Espresso 的依赖

注意添加 google 的仓库

dependencies {
  // AndroidJUnitRunner and JUnit Rules
  androidTestCompile 'com.android.support.test:runner:1.0.1'
  androidTestCompile 'com.android.support.test:rules:1.0.1'

  // Espresso dependencies
  androidTestCompile 'com.android.support.test.espresso:espresso-core:3.0.1'
  androidTestCompile 'com.android.support.test.espresso:espresso-contrib:3.0.1'
  androidTestCompile 'com.android.support.test.espresso:espresso-intents:3.0.1'
  androidTestCompile 'com.android.support.test.espresso:espresso-accessibility:3.0.1'
  androidTestCompile 'com.android.support.test.espresso:espresso-web:3.0.1'
  androidTestCompile 'com.android.support.test.espresso.idling:idling-concurrent:3.0.1'

  // The following Espresso dependency can be either "compile"
  // or "androidTestCompile", depending on your app's implementation
  androidTestCompile 'com.android.support.test.espresso:espresso-idling-resource:3.0.1'
}

设置 单元测试的必备配置

在主 Module 下面的 android.defaultConfig 添加:

testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

一个例子:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 26

    defaultConfig {
        applicationId "com.my.awesome.app"
        minSdkVersion 15
        targetSdkVersion 26
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
}

dependencies {
    // App's dependencies, including test
    compile 'com.android.support:support-annotations:22.2.0'

    // Testing-only dependencies
    androidTestCompile 'com.android.support.test:runner:1.0.1'
    androidTestCompile 'com.android.support.test.espresso:espresso-core:3.0.1'
}

添加第一个测试

Android Studio 中在主 Module 中创建这样的目录:
src/androidTest/java/com.example.package/

一个例子:
@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()));
    }
}

相关文章

网友评论

      本文标题:Android 单元测试——Espresso 设置说明

      本文链接:https://www.haomeiwen.com/subject/pqhraxtx.html