文档章节

UiDevice配合espresso 使用进行android auto test

kipeng300
 kipeng300
发布于 2016/05/13 10:46
字数 256
阅读 80
收藏 0

我们在写auto test 时候可能会遇到启动其他的ap情况,在只使用espresso下,对于退出其他ap或者返回我们的ap时候会比较麻烦。

例如:TaskManager 需要先启动一个其他的ap,退出,然后进入TaskManager查看后台进程信息

这时候我们就可以使用UiDevice配合espresso来写具体的测试。

@RunWith(AndroidJUnit4.class)

public class KipengTest {

    private UiDevice device = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation());


    @Rule
    public ActivityTestRule mActivity = new ActivityTestRule(MainActivity.class , false , true);

    @Test
    public void testWrite() {

        Intent intent = new Intent(Intent.ACTION_MAIN);
        intent.addCategory(Intent.CATEGORY_LAUNCHER);
        //注意ComponentName的参数  包名 包名+类名(全路径)  不然会crash  提示找不到对应的类
        ComponentName cn = new ComponentName("com.example.archermind.myapplication" , "com.example.archermind.myapplication.MainActivity");
        intent.setComponent(cn);
        //启动第三方的app界面
        mActivity.getActivity().startActivity(intent);
        SystemClock.sleep(2 * 1000);
        //点击返回,退出当前的activity返回到之前的activity
        device.pressKeyCode(KeyEvent.KEYCODE_BACK);
        onView(allOf(withId(R.id.textView) , withText("Hello World!"))).perform(click());


    }


}

UiDevice是uiautomator包下的,我们可以使用UiDevice进行很多的操作,具体的可以自己去类内看下它的方法

© 著作权归作者所有

共有 人打赏支持
kipeng300
粉丝 6
博文 39
码字总数 26283
作品 0
浦东
程序员
私信 提问
Android Studio 2.2 Preview 3 发布

Android Studio 2.2 Preview 3 发布了,该版本新增一些新特性,以及修复 Preview 2 中发现的 Bugs。 以下是该版本值得关注的内容: Espresso Test Recorder Demo of the Espresso Test Recor...

oschina
2016/06/09
3.2K
21
如何正确使用Espresso来测试你的Android程序

UI测试在Android平台上一直都是一个令人头痛的事情, 由于大家平时用的很少, 加之很多文档的缺失, 如果很多东西从头摸索,势必踩坑无数. 自Android24正式淘汰掉了InstrumentationTestCase(位于...

圣骑士wind
2018/09/30
0
0
Android Testing Support Library

This release includes three major updates: Espresso-Web[1]: an Espresso-like API for automated UI testing of hybrid Android applications. Use Espresso-Web to test and interact w......

jdroid
2015/06/10
0
0
LinkedIn Test Butler 旨在改进 Android UI 测试

LinkedIn工程师兼Test Butler创建者Drew Hannay写道,Test Butler是一款面向Android的开源测试工具,它允许开发人员对若干测试环境设置通过编程进行控制,从而使开发人员可以可靠地运行测试。...

局长
2016/09/01
1K
1
Espresso 2.2.2 发布,Android自动化测试框架

Espresso 2.2.2 发布了。 Espresso是一种Android自动化测试框架,使测试人员可以在云中x86机器的多线程环境里运行测试,并解决了关于UI测试的并发问题。 新特性: espresso 1. Issue 194253...

sujdk
2016/03/24
2.8K
0

没有更多内容

加载失败,请刷新页面

加载更多

Linux下端口转发工具rinetd介绍

linux下简单好用的工具rinetd,实现端口映射/转发/重定向,针对TCP协议,不支持UDP。 官网地址 http://www.boutell.com/rinetd 里面介绍及使用齐全。 使用场景举例: 阿里云内网Redis连接问题...

ouhoo
9分钟前
0
0
Oracle学习日志-5(算数运算符,比较运算符和逻辑运算符)

因为有编程基础,所以对于这一章还是很好理解,只需要注意对NULL的运算。 操作的表格 算数运算符 查询商品名字和商品售价,并商品售价乘2 SELECT product_name,sale_price * 2 AS "sale_pri...

白话
21分钟前
0
0
搜索引擎(Lucene介绍、分词器详解)

Lucene介绍 Lucene简介 最受欢迎的java开源全文搜索引擎开发工具包。提供了完整的查询引擎和索引引擎,部分文本分词引擎(英文与德文两种西方语言)。Lucene的目的是为软件开发人员提供一个简...

这很耳东先生
26分钟前
0
0
quartz详细介绍

quartz常用api Scheduler 调度程序交互的主要API。 Job 希望由调度程序执行的组件实现的接口。 JobDetail 用于定义作业的实例。 JobDataMap 可以包含不限量的序列化数据,在job运行的时候可以...

大笨象会跳舞吧
26分钟前
0
0
kotlin使用jackson序列化enum

默认情况下,我们序列化与反序列化enum是它的name,事实上大部分情况下我们需要序列化的是我们自定义的value,那应该怎么做呢? 这种情况下我们就需要@JsonValue与@JsonCreator data class U...

weidedong
31分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部