初识monkeyrunner

1、monkeyrunner是什么

monkeyrunner工具为写程序提供API,这些程序用于独立与安卓代码之外来控制安卓设备或者模拟器。使用monkeyrunner,你可以编写python程序,然后安装安卓应用或者测试包,运行它,向它发送按键,截取其UI的截图,并存储在工作站上。monkeyrunner工具当初用于测试程序或者功能、框架层面的运行测试集,当然你也可以随意用于其他目的。

monkeyrunner工具和monkey无关,但是还是被认为是monkey工具,monkey是直接运行在设备或者模拟器的adb shell,并随机产生用户或者系统事件。相比来说,monkeyrunner工具从工作站通过api向模拟器或者终端发送指定的命令或者事件。


2、能做什么和局限

* 多设备控制

其API可以向多个设备或者模拟器执行一个或者多个测试套。可以一次性绑定多个物理终端或者模拟器,彼此链接,然后运行测试集合。当然也可以使用程序启动模拟器的配置,运行测试,关掉模拟器。

*功能测试

可以针对安卓应用运行自动化测试,你只要输入按钮或者点击事件的属性值,然后通过截图查看结果。

*回归测试

可以稳定运行程序去测试应用,然后将输出的截图与已知的截图进行比对

*可扩展自动化

monkeyrunner是api工具包,你完全可以开发基于python的完整模块或者程序来控制安卓设备,除了利用monkeyrunner的api本身,也可以使用python标准库模块os和subprocess来调用安卓工具,比如adb。

也可以添加自己的类到monkeyrunner的api里。

monkeyrunner使用JPython。一直使用java编程语言的一种python实现,jpython使得monkeyrunner的api与安卓框架直接交互,通过jpython,你可以使用python语法来使用变量、类以及api的方法。


3、Monkeyrunner的api

*Monkeyrunner:monkeyrunner程序的方法类,提供了与设备或者模拟器连接的方法。同时提供了UI和显示内置帮助的方法。

*MonkeyDevice:代表设备或者模拟器,该类提供安装、卸载包,启动活动、向应用发送按键或者触摸时间。同时也可以使用这个类运行测试包。

*MonkeyImage:代表屏幕截图,该类提供抓取屏幕,从位图格式转化为其他多种格式,比对两个截图对象,并将图像写入到文件中。

备注:

在python程序中,你作为一个python模块访问每一个类,monkeyrunner没有自动导入这些模块,为了导入模块,需要使用python语句;

from com.android.monkeyrunner import <module>

4、运行monkeyrunner

运行monkeyrunner,又两种方式,1:通过文件运行 2、交互绘画中输入monkeyrunner语句

或者再sdk路径下的/tools文件夹李直接点击出发monkeyrunner命令;如果提供一个文件作为参数,monkeyrunner将把它作为python程序运行其内容;或者启动一个交互会话;

命令语法:

monkeyrunner -plugin <jar> <program_filename> <program_options>

参数说明:

-plugin <jar> 可选,为monkeyrunner指定一个包含插件的jar文件,指定多个jar文件,则多次使用该语句。

<program_filename>

如果提供了这个语句,monkeyrunner将其作为python程序运行其内容;无指定,则启动交互会话窗口;

<program_options>可选,者程序文件中的语句或者标志









  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值