入门monkeyrunner2-官方文档第一部分
作者:网络转载 发布时间:[ 2015/11/4 14:35:30 ] 推荐标签:monkeyrunner2 软件测试工具
该monkeyrunner工具提供了编写控制Android设备或仿真器从Android的代码之外程序的API。随着monkeyrunner,您可以编写安装一个Android应用程序或测试包,运行它,发送击键它,需要它的用户界面截图,并将截图工作站上的Python程序。该monkeyrunner工具主要设计在功能/框架水平和运行单元测试套件来测试应用程序和设备,但你可以自由地将其用于其它用途。
所述monkeyrunner工具是不相关的 用户界面/应用程序训练器猴,也被称为猴工具。在猴子的工具在运行 ADB壳设备或仿真器上直接生成的用户和系统事件的伪随机流。相比较而言,monkeyrunner工具控制设备和仿真器从工作站通过从API发送特定命令和事件。
该monkeyrunner工具为Android的测试,这些独特的功能:
多设备控制:monkeyrunner API可以跨多个设备或仿真器应用一个或多个测试套件。您可以物理连接的所有设备或启动了所有的仿真器(或两者兼有)同时,连接到每一个轮流程序,然后运行一个或多个测试。您也可以启动一个模拟器配置编程,运行一个或多个测试,然后关闭模拟器。
功能测试:monkeyrunner可以运行Android应用程序的自动启动到完成测试。您提供的输入值与键盘或触摸事件,并查看结果的截图。
回归测试 - monkeyrunner可以运行一个应用程序,并比较其输出截图一组被称为是正确的截图测试应用程序的稳定性。
可扩展的自动化-由于monkeyrunner是一个API工具包,你可以开发基于Python模块和控制Android设备程序的整个系统。除了 ??使用monkeyrunner API本身,你可以使用标准的Python OS和 子 模块的调用Android的工具,比如 Android的调试桥。
您也可以添加自己的类的monkeyrunner API。此进行更详细的部分中所述 扩展monkeyrunner与插件。
该monkeyrunner工具使用的Jython,使用Java编程语言实现的Python。的Jython允许monkeyrunner API与Android框架轻松互动。使用Jython,您可以使用Python语法来访问常量,类和API的方法。
一个简单的monkeyrunner程序
这里是一个连接到设备,创造了一个简单的monkeyrunner程序 MonkeyDevice 对象。使用MonkeyDevice目的,程序将安装一个Android应用程序包,运行其的活动之一,并发送键事件到活性。然后程序需要的结果的截图,创建 MonkeyImage对象。从这个对象,程序写出来的.png包含截图文件。
# Imports the monkeyrunner modules used by this program
from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice
# Connects to the current device, returning a MonkeyDevice object
device = MonkeyRunner.waitForConnection()
# Installs the Android package. Notice that this method returns a boolean, so you can test
# to see if the installation worked.
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', MonkeyDevice.DOWN_AND_UP)
# Takes a screenshot
result = device.takeSnapshot()
# Writes the screenshot to a file
result.writeToFile('myproject/shot1.png','png')
该monkeyrunner API
所述monkeyrunner API被包含在包中的三个模块 com.android.monkeyrunner:
MonkeyRunner:一类为monkeyrunner程序的实用方法。这个类提供了用于连接monkeyrunner至设备或模拟器的方法。它也提供了用于创建用户界面的monkeyrunner程序和用于显示内置帮助的方法。
MonkeyDevice:表示一个设备或模拟器。这个类提供了安装和卸载程序包,启动一个活动以及发送键盘或触摸事件到应用程序的方法。您也可以使用这个类来运行测试包。
MonkeyImage:表示一个屏幕捕获图像。这个类提供了捕捉屏幕,将位图图像,以各种不同的格式,比较两个MonkeyImage对象,写一个图像文件的方法。
在一个Python程序,您访问的每个类的Python模块。该monkeyrunner工具不会自动导入这些模块。要导入模块,使用Python 从语句:
from com.android.monkeyrunner import <module>
其中,<模块>是要导入的类名。你可以在同一个导入多个模块的声明用逗号分隔的模块名称。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11