MonkeyRunner及MonkeyRunner模块简介

Posted lxszero

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MonkeyRunner及MonkeyRunner模块简介相关的知识,希望对你有一定的参考价值。

●MonkeyRunner简介

MonkeyRunner:android SDK中自带的一个黑盒测试工具,在PC端通过Android API控制设备的运行或者自动化测试的执行。支持Python脚本,可以实现Monkey无法实现的一些逻辑控制。

注意: 前一章面讲的Monkey是运行在abd shell中的、运行在设备上,MonkeyRunner是在PC端运行,通过PC端提供的API来执行自动化测试的。

●MonkeyRunner API 3大模块组成

·MonkeyRunner //通用的一些方法的模块

·MonkeyDevice //控制设备和模拟器的模块

·MonkeyImage  //与屏幕图像相关的模块

官方文档:https://developer.android.com/studio/test/monkeyrunner/index.html

官网上说:MonkeyRunner是一个和Monkey没有关系的工具,虽然名称相似,是两个完全不同的工具。MonkeyRunner提供了一些在Android测试中独有的特性,包括多设备的控制、支持功能测试、支持回归测试、在脚本中支持对结果截屏、可扩展API。

●MonkeyRunner模块的方法

●MonkeyRunner各个模块中主要API的使用方法

首先在adt-bundle...\\sdk\\tools双击monkeyrunner.bat或者cmd里敲monkeyrunner.bat

•第一步:导入模块这一步必须做,才能下面的操作monkeyrunner

from com.android.monkeyrunner import +模块名 //导入模块的方法

from com.android.monkeyrunner import MonkeyRunner,MonkeyDevice,MonkeyImage

●帮助文档的方法  

①MonkeyRunner.help("text") //text格式

报错原因是因为monkeyrunner在集成到sdk中并没有把相应的资源放到sdk版本中来,如果要执行help命令的话,需要把百度云的resources文件包拷贝到sdk/tools/lib中

再次执行一下MonkeyRunner.help("text")

②MonkeyRunner.help("html") //html格式可以把生成的help信息写到文件中方便阅读

content=MonkeyRunner.help("html") //help信息放到content里面

f=open("help.html","w") //定义文件,把content变量保存的内容写到文件中

f.write(content)//写入content变量

f.close()

adt-bundle\\sdk\\tools会生成help.html文件

打开此文件会看到生成monkeyrunner的help文件并且有相应的方法,并且有每个方法的具体说明:返回值、对应的参数、参数的含义。

●MonkeyRunner.alert(\'对话框信息\',\'对话框标题\',\'对话框确定按钮文字\')

MonkeyRunner.alert(\'MonkeyRunner alert\',\'imooc\',\'OK\')

●MonkeyRunner.choice(\'显示的信息\',\'选择的清单\',\'标题\')

MonkeyRunner.choice(\' MonkeyRunner choice \',[\'test1\',\'test2\'],\'imooc\')

选择test1点击确定,返回值为0,说明这个选择清单的返回值是根据选择项的选择的数组中的index值是choice返回的,返回值从0开始的。

●MonkeyRunner.input(\'信息\',\'初始化值\',\'标题\',\'ok按钮\',\'cancel按钮\')

MonkeyRunner.input(\'MonkeyRunner input\',\'init str\',\'imooc\',\'OK\',\'Cancel\')

在输入框输入test again,命令行返回test again

●MonkeyRunner.sleep(秒) //脚本中断执行的命令

MonkeyRunner.sleep(4)

4秒钟应用暂停才会结束

●MonkeyRunner.waitForConnection(超时时间,deviceid)//建立和设备连接

如果不指定,默认连接当前已经连接的设备

首先打开avd

MonkeyRunner.waitForConnection()

返回monkeyrunner一个device对象,表示monkeyrunner和设备已建立了通信

以上是关于MonkeyRunner及MonkeyRunner模块简介的主要内容,如果未能解决你的问题,请参考以下文章

monkeyrunner 自动化 解释

转载:monkeyrunner之eclipse中运行monkeyrunner脚本之环境搭建

MonkeyRunner

MonkeyRunner环境搭建

monkeyrunner初试

第8章2节《MonkeyRunner源代码剖析》MonkeyRunner启动执行过程-解析处理命令行參数