基于Instrumentation Framework的开源项目AndroidMonkey是怎样的

技术基于Instrumentation Framework的开源项目AndroidMonkey是怎样的基于Instrumentation Framework的开源项目AndroidMonkey是怎样的,很多新手对此不是很

基于Instrumentation Framework的开源项目AndroidMonkey是什么?很多新手对此不是很清楚。为了帮助大家解决这个问题,下面小编就为大家详细讲解一下。需要的人可以从中学习,希望你能有所收获。

最大的问题是,猴子是如何用仪器注入事件的?在这种情况下,它如何跨进程发送事件?因为按照我的理解,插装框架是不能跨流程的,而猴子绝对是跨流程的!

@ overridefpubliintfireevent(InstrumentationtestRuner){ Stringnote;if(mAction==KeyEvent。ACTION _ UP){注意=' ACTION _ UP} else { note=' ACTION _ DOWN} system . out . println(' : typing key(' note '): ' mKeyCode '//');尝试{//TestRuner . SendKeySync(GetEvent());testruner . sendkeydownupsync(mKeyCode);} catch(exception one){ system . out . println(' Failedtosendkey(' note '): ' mKeyCode '//');returnMonkeyEvent。注入_失败;}returnMonkeyEvent。注入_成功;}纠缠了一段时间,回到下载的地方,看了一下概述。很短,但很清楚地描述了这不是我想要的猴子,而是原生猴子的修改后的安卓库。既然见面了,请顺便翻译一下它的介绍和用法。反正就是几句话。我们将来有时间会进一步研究它。至于是不是真的不能像我说的那样跨越流程,那就要看未来或者大家去验证了。

1. 概览

androidMonkey是一个安卓库。其实是基于原生猴子的测试库,方便测试和分析(比如代码覆盖率)。

测试人员/用户可以轻松地使用这个库为Android gui应用程序创建随机测试脚本。

Why this library:

为什么使用这个库:

有了这个库,你可以用几行代码为你的应用程序编写随机测试用例。

您可以在测试代码中添加断言,以轻松判断您的SUT(测试中的系统/应用程序)的当前情况(如果您使用monkey,这很难做到)。

你可以通过随即测试对你的app做覆盖率分析,这对我们的研究是很有用的(像我现在所做的)(译者注:其实最后这一句话应该这样子去理解:如果你是一个公司的采购,你想去评估一个应用是否足够稳定满足你的需求,那么你就会先试用做一些前期研究)

Code example/代码实例

public classcontactaddertestextendsactivityinstrumentationtestcase 2 contactaddernbs

p;{          private int NUM_EVENTS = 1000;          public ContactAdderTest() {                 super("com.example.android.contactmanager", ContactAdder.class);         }          @Override         protected void setUp() throws Exception {                 super.setUp();                 setActivityInitialTouchMode(false);          }          public void testMonkeyEvents() {                 Display display = getActivity().getWindowManager().getDefaultDisplay();                 Instrumentation inst = getInstrumentation();                 PackageManager pm = getActivity().getPackageManager();                  Monkey monkey = new Monkey(display,                                 "com.example.android.contactmanager", inst, pm);                  // Generate and fire a random event.                  for (int i = 0; i < NUM_EVENTS; i++) {                         monkey.nextRandomEvent();                 }          } }

 
  

 

2.使用简介

使用简介

简介

以下是介绍如何使用这个库:

详情

C创建android项目

先创建一个Android Test Project项目,通过Android ADT[http://developer.android.com/sdk/eclipse-adt.html]   添加对AndroidMonkey库的引用(引用jar或者项目)

创建测试类

创建一个普通的ActivityInstrumentationTestCase2测试类,然后加入如下的测试用例代码:

public void testMonkeyEvents(){ Display display = getActivity().getWindowManager().getDefaultDisplay(); Instrumentation inst = getInstrumentation(); PackageManager pm = getActivity().getPackageManager(); Monkey monkey = new Monkey(display, packageToTest, inst, pm); for (int i = 0; i < NUM_EVENTS; i++){ monkey.nextRandomEvent(); } }

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/112483.html

(0)

相关推荐

  • mybatis中返回值应该配置什么(mybatis中select方法怎么写)

    技术Mybatis Select Count(*)的返回值类型是什么本篇内容介绍了“Mybatis Select Count(*)的返回值类型是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就

    攻略 2021年12月21日
  • 如何解析Burpsuite中的抓包配置

    技术如何解析Burpsuite中的抓包配置本篇文章给大家分享的是有关如何解析Burpsuite中的抓包配置,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。一、

    攻略 2021年12月9日
  • 如何查看oracle统计信息收集

    技术如何查看oracle统计信息收集本篇内容主要讲解“如何查看oracle统计信息收集”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何查看oracle统计信息收集”吧!查看

    攻略 2021年10月22日
  • Python异常处理的关键词与结构有哪些

    技术Python异常处理的关键词与结构有哪些这篇文章主要介绍“Python异常处理的关键词与结构有哪些”,在日常操作中,相信很多人在Python异常处理的关键词与结构有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好

    攻略 2021年11月20日
  • 九个点用四条线连起来,怎么用四条线把九个点连在一起

    技术九个点用四条线连起来,怎么用四条线把九个点连在一起3个答案九个点用四条线连起来:1、 可以一笔画出三条直线来把这九个点连起来。第一条直线从上排左端那个点的上缘开始,向右下方延伸,穿过上排中间的点的中心和上排右端的点的

    生活 2021年10月27日
  • Kubernetes架构设计与核心组件工作流是什么

    技术Kubernetes架构设计与核心组件工作流是什么这篇文章主要讲解了“Kubernetes架构设计与核心组件工作流是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“

    攻略 2021年10月29日