基于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)

相关推荐

  • 源码编译怎么安装PostgresSQL

    技术源码编译怎么安装PostgresSQL这篇文章主要讲解了“源码编译怎么安装PostgresSQL”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“源码编译怎么安装Post

    攻略 2021年11月4日
  • maven的各种打包插件有哪些功能(maven常用功能)

    技术maven常用的插件有哪些这篇文章主要介绍了maven常用的插件有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。背景maven 常用的三个插件对打

    攻略 2021年12月25日
  • 水浒传每回概括200字,水浒传44章概括,200字)

    技术水浒传每回概括200字,水浒传44章概括,200字)●第四十四回 锦豹子小径逢戴宗 病关索长街遇石秀 话说公孙胜与水浒好汉约定的期限已到却迟迟未归水浒传每回概括200字,晁盖、宋江、吴用派戴宗往蓟州探望公孙胜,中途遇

    生活 2021年10月20日
  • 怎么用Python爬取7日热门的文章

    技术怎么用Python爬取7日热门的文章怎么用Python爬取7日热门的文章,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。前言相信大家都很喜欢看那种非常

    攻略 2021年10月25日
  • python常用Redis操作

    技术python常用Redis操作 python常用Redis操作安装redis库
    pip intall redis
    导入库
    import redis
    连接redis,指定ip,端口,库号
    con =

    礼包 2021年11月29日
  • Sentinel-Go 源码系列,二)|初始化流程和责任链设计模式

    技术Sentinel-Go 源码系列,二)|初始化流程和责任链设计模式 Sentinel-Go 源码系列(二)|初始化流程和责任链设计模式上节中我们知道了 Sentinel-Go 大概能做什么事情,最简

    礼包 2021年11月9日