美文网首页
Espresso常用测试代码

Espresso常用测试代码

作者: 会飞的大象_ | 来源:发表于2017-12-14 21:38 被阅读0次

/**

* 获取onResumed状态的activity

*

* @param className 获取想要activity的完整类名

* @return Activity

* @author JY

* @time 2017/6/13 10:52

*/

public Activity getActivityInstance(final String className) {

    final ArrayList skipFinal = new ArrayList<>();

    try {

        mActivityRule.runOnUiThread(new Runnable() {

            public void run() {

                Collection resumedActivities = ActivityLifecycleMonitorRegistry.getInstance().getActivitiesInStage(Stage.RESUMED);

                for (Activity act : resumedActivities) {

                    if (TextUtils.equals(className, act.getClass().getName())) {

                        skipFinal.add(act);

                        break;

                    }

                }

        }});

    } catch (Throwable throwable) {

        throwable.printStackTrace();

    }

    return skipFinal.get(0);

}

/**

* 断言某控件是否正在显示中

*

* @param text 控件文字

* @author JY

* @time 2017/6/14 10:37

*/

public void assertIsShowing(String text) {

    onView(withText(text)).check(matches(isDisplayed()));

}

/**

* 断言某控件是否正在显示中

*

* @param id 控件id

* @author JY

* @time 2017/6/13 11:00

*/

public void assertIsShowing(int id) {

    onView(withId(id)).check(matches(isDisplayed()));

}

/**

* 点击控件并等待默认时间

*

* @param id 控件id

* @author JY

* @time 2017/6/13 10:30

*/

public void performClick(int id) {

    onView(withId(id)).perform(click());

    SystemClock.sleep(DEFAULTTIME);

}

/**

* 点击控件并等待一段时间

*

* @param id          控件id

* @param millisecond 延时等待

* @author JY

* @time 2017/6/13 10:22

*/

public void performClick(int id, long millisecond) {

    onView(withId(id)).perform(click());

    SystemClock.sleep(millisecond);

}

配置Espresso

打开APP Module中得build.gradle文件,在dependencies中加入:

androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.1'

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

在android.defaultConfig中加入:

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

EspressoAPI图示

相关文章

  • Espresso常用测试代码

    /*** 获取onResumed状态的activity** @param className 获取想要activi...

  • Espresso的详细使用

    本篇详细介绍了Espresso的使用方式. Espresso 测试代码位置和静态导入 Espresso 测试代码必...

  • Espresso-core库分析

    Google为他们写的Espresso框架也写单元测试/集成测试代码,让我们先从这些测试代码出发看一下Espres...

  • Espresso UI测试

    Espresso测试框架 Espresso 是 Google 在 2013 年推出的 Android UI 测试的...

  • Android UI 测试指南之 Espresso

    关于 Espresso Espresso 是一个简单好用的 Android UI 测试框架 Espresso 主要...

  • 通过Espresso测试异步代码

    本篇讲如何通过Espresso实现异步测试. 概述 如果没有框架的支持测试异步代码还是非常具有挑战性的 ! 在 E...

  • 单元测试--Espresso测试框架的使用

    原文链接:川峰-Espresso测试框架的使用 Espresso是Google官方提供并推荐的Android测试库...

  • 初识Espresso

    本篇内容介绍了Espresso框架的基本使用. Espresso测试框架介绍 Espresso 是一个可以轻松编写...

  • Espresso 自动化测试的使用

    Espresso 自动化测试使用 Espresso是一个Android UI测试框架,由三部分组成 ViewMac...

  • Espresso

    Espresso Espresso提供大量的方法用来进行UI测试,这些API可以让你写的简洁和可靠的自动化UI测试...

网友评论

      本文标题:Espresso常用测试代码

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