美文网首页
Android 开发 谷歌UI测试框架(Espresso)

Android 开发 谷歌UI测试框架(Espresso)

作者: TiaoPi | 来源:发表于2017-11-27 09:23 被阅读54次

    Android 开发 谷歌UI测试框架(Espresso)

    官网:https://developer.android.com/training/testing/espresso/index.html

    核心 API 小巧、可预测、易于学习并且依然保持对定制的开放。Espresso 测试清晰的描述异常、交互和断言,而没有样板内容、自定义基础设施或凌乱的实现细节的干扰。

    Espresso 测试运行非常快!它会在应用 UI 处于静止时对其进行操作和断言,而使你远离了等待、同步、睡眠以及后台轮)。

    配置测试环境

    在应用的 build.gradle 文件添加

    dependencies中

     androidTestImplementation 'com.android.support.test:runner:1.0.1'
        androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
    
    

    设置 instrumentation runner 在 ​android.defaultConfig​ 下添加

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

    Android Studio 3.0.1中默认是配置好的 不需要自己添加

    我们先来创建第一个测试,让项目先跑起来

    EspressoTest1Activity.java

    public class EspressoTest1Activity extends BaseActivity {
    
        @BindView(R.id.espress_test1_tv)
        TextView espressTest1Tv;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_espresso_test1);
            ButterKnife.bind(this);
            showBack();
        }
    }
    
    开始.gif

    开始学习各类UI的测试

    先来看看提供了哪些方法

    https://google.github.io/android-testing-support-library/downloads/espresso-cheat-sheet-2.1.0.pdf

    20161019145537619.png

    基础

    Espresso 组件介绍

    • Espresso : 与识图交互的切入点,参考onViewonData. 也暴露了与任何视图都没有必要联系的API (比如pressBack)

    • ViewMatchers : 实现了Matcher<? super View> 接口的对象集合,你可以在onView方法中传入一个或者多个此类对象来在当前的视图结构中定位一个视图;

    • ViewActions : 可以作为参数出入ViewInteraction.perform()方法中的ViewAction的集合(比如 click()).

    • ViewAssertions : 可以作为参数传入ViewInteraction.check()方法中的
      ViewAssertion 的集合,通常,你会使用带有视图匹配器的匹配断言来判断当前被选中视图的状态;

    简单的说

    • ViewMachers:寻找用来测试的View。
    • ViewActions:发送交互事件。
    • ViewAssertions:检验测试结果。

    相关文章

      网友评论

          本文标题:Android 开发 谷歌UI测试框架(Espresso)

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