设为首页收藏本站

安卓茶网

 找回密码
 我要注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 552|回复: 0

APP自动化测试中Monkey和 MonkeyRunner

[复制链接]

19

主题

20

帖子

142

积分

注册会员

Rank: 2

积分
142
发表于 2016-12-1 15:27:28 | 显示全部楼层 |阅读模式

在设计了测试用例并通过评审之后,由测试人员根据测试用例中描述的规程步步执行测试,得到实际结果与期望结果的比较。在此过程中,为了节省人力、时间或硬件资源,提高测试效率,便引入了自动化测试的概念。自动化测试就是把以人为驱动的测试行为转化为机器执行的一种过程。今天就简单说说,在Android测试中常用的测试包括:MonkeyMonkeyRunner


Monkey是一个命令行工具,可以运行在模拟器里或实际设备中,它是一种轻量级的性能测试工具。它向系统发送伪随机的事件流,实现对正在运行的应用程序进行压力测试。


Monkey包括许多选项,包括:基本配置选项,;运行约束选项;事件类型和频率;调试选项。运行的时候,它生成事件,并把它们发给系统。同时,Monkey还对测试中的系统进行监测。如果限定了Monkey运行在一个或几个特定的包上,那么它会监测试图转到其它包的操作,并对其进行阻止。如果应用程序崩溃或接收到任何失控异常,Monkey将停止并报错。如果应用程序产生了应用程序不响应的错误,Monkey将会停止并报错。按照选定的不同级别的反馈信息,在Monkey中还可以看到其执行过程报告和生成的事件。


Monkey工具直接运行在设备或模器的adb shell中,生成用或系随机事件流。而MonkeyRunner工具是在工作站上通API的特定命令和事件控制设备或模器。提供了一个API,使用此API写出的程序可以在Android代码之外控制Android设备和模拟器。


通过MonkeyRunner,可以写出一个Python程序去安装一个Android应用程序或测试包,运行它,向它发送模拟击键,截取它的用户界面图片,并将截图存储于工作站上。MonkeyRunner工具的主要设计目的是用于测试功能/框架水平上的应用程序和设备,或用于运行单元测试套件。


功能包括:
多设备控制:monkeyrunnerAPI可以跨多个设备或模拟器实施测试套件。您可以在同一时间接上所有的设备或一次启动全部模拟器(或统统一起),依据程序依次连接到每一个,然后运行一个或多个测试。您也可以用程序启动一个配置好的模拟器,运行一个或多个测试,然后关闭模拟器。

App功能测试monkeyrunner可以为一个应用自动贯彻一次功能测试。您提供按键或触摸事件的输入数值,然后观察输出结果的截屏。

回归测试:monkeyrunner可以运行某个应用,并将其结果截屏与既定已知正确的结果截屏相比较,以此测试应用的稳定性。


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 我要注册

本版积分规则



QQ|申请友链|手机版|安卓茶网 ( 豫ICP备13002090号 公安备案豫公网安备 41010202002428号  

GMT+8, 2017-6-24 23:46 , Processed in 0.136658 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表