文档章节

UiDevice配合espresso 使用进行android auto test

kipeng300
 kipeng300
发布于 2016/05/13 10:46
字数 256
阅读 77
收藏 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
浦东
程序员
如何正确使用Espresso来测试你的Android程序

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

圣骑士wind
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
全副武装!AndroidUI自动化测试在RxImagePicker中的实践历程

如果您不是很了解Android的自动化测试,或者还不了解UI自动化测试对于Android开发者的意义,请参考笔者的文章《解放双手,Android开发应该尝试的UI自动化测试(将于近期发布)》。概述 我是却...

却把清梅嗅2
08/02
0
0
Android Espresso AppNotIdleException

最近在研究安卓单元测试,看到官方推荐用Espresso做UI层面的测试,就简单用了下。虽然Espresso很简单,但是适配到真实项目中还是走了不少弯路,踩了不少坑的。这里记录一下: 由于项目开发的...

H3c
05/10
0
0
Android单元测试介绍

Android 测试支持库介绍 Android的测试支持库为测试Android应用提供了大量框架。该库提供了一组API快速构建和运行测试代码,包括JUnit4和功能用户界面(UI)测试。可以从Android Studio IDE中或...

磁针石
2016/01/13
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

【大福利】极客时间专栏返现二维码大汇总

我已经购买了如下专栏,大家通过我的二维码你可以获得一定额度的返现! 然后,再给大家来个福利,只要你通过我的二维码购买,并且关注了【飞鱼说编程】公众号,可以加我微信或者私聊我,我再...

飞鱼说编程
今天
1
0
Spring5对比Spring3.2源码之容器的基本实现

最近看了《Spring源码深度解析》,该书是基于Spring3.2版本的,其中关于第二章容器的基本实现部分,目前spring5的实现方式已有较大改变。 Spring3.2的实现: public void testSimpleLoad(){...

Ilike_Java
今天
1
0
【王阳明心学语录】-001

1.“破山中贼易,破心中贼难。” 2.“夫万事万物之理不外于吾心。” 3.“心即理也。”“心外无理,心外无物,心外无事。” 4.“人心之得其正者即道心;道心之失其正者即人心。” 5.“无...

卯金刀GG
今天
2
0
OSChina 周三乱弹 —— 我们无法成为野兽

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @ _刚刚好: 霸王洗发水这波很骚 手机党少年们想听歌,请使劲儿戳(这里) hahahahahahh @嘻酱:居然忘了喝水。 让你喝可乐的话, 你准忘不了...

小小编辑
今天
11
0
vm GC 日志 配置及查看

-XX:+PrintGCDetails 打印 gc 日志 -XX:+PrintTenuringDistribution 监控晋升分布 -XX:+PrintGCTimeStamps 包含时间戳 -XX:+printGCDateStamps 包含时间 -Xloggc:<filename> 可以将数据保存为......

Canaan_
昨天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部