monkeyrunner测试教程

网友投稿 298 2022-11-01

monkeyrunner测试教程

什么是monkeyrunner

monkeyrunner工具同Monkey工具的差别

Monkey:

monkeyrunner:

monkeyrunner工具则是在工作站上通过API定义的特定命令和事件控制设备或模拟器。

monkeyrunner的测试类型

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

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

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

4. 可扩展的自动化:由于monkeyrunner是一个API工具包,您可以基于Python模块和程序开发一整套系统,以此来控制Android设备。除了使用monkeyrunner API之外,您还可以使用标准的Python os和subprocess模块来调用如adb这样的Android工具 。

运行monkeyrunner

您可以直接使用一个代码文件运行monkeyrunner,抑或在交互式对话中输入monkeyrunner语句。不论使用哪种方式,您都需要调用SDK目录的tools子目录下的monkeyrunner命令。如果您提供一个文件名作为运行参数,则monkeyrunner将视文件内容为Python程序,并加以运行;否则,它将提供一个交互对话环境。

monkeyrunner的命令语法为:

monkeyrunner测试教程

monkeyrunner API 主要通过下面三个包:

MonkeyRunner: 主要提供了monkeyrunner 应用的辅助方法以及,用来链接设备或是模拟器的方法,并提供UI支持等。

MonkeyImage: 代表一个截屏图像,可以截取不同格式的图像,比较两个MonkeyImage图像,保存图像等。

下面为一个 Python 写的monkeyrunner 应用, 因为涉及到Python 语言,这里不详细说明了

from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice

# Connects to the current device, returning a MonkeyDevice object

# Installs the Android package. Notice that this method returns a boolean,

device.installPackage(‘myproject/bin/MyApplication.apk’)

# sets a variable with the package‘s internal name

package = ’com.example.android.myapplication‘

# sets a variable with the name of an Activity in the package

activity = ’com.example.android.myapplication.MainActivity‘

# sets the name of the component to start

runComponent = package + ’/‘ + activity

# Runs the component

device.startActivity(component=runComponent)

# Presses the Menu button

device.press(’KEYCODE_MENU‘,’DOWN_AND_UP‘)

# Takes a screenshot

result = device.takeSnapshot()

# Writes the screenshot to a file

result.writeToFile(’myproject/shot1.png‘,’png‘)

详细的API说明请参考Android文档 ,如果你需要实现自动测试,编写测试代码,可以使用Python通过monkeyrunner API来实现。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:面向高校 | “云原生技术应用与实践”示范课程项目开放申报
下一篇:优秀标杆!华泰证券多芯协同云网管理平台
相关文章

 发表评论

暂时没有评论,来抢沙发吧~