monkeyrunner 使用id——calculator.py 实例
来源:互联网 发布:合肥中伟科研究院 知乎 编辑:程序博客网 时间:2024/06/08 06:43
把前段时间的研究成果记录一下。主要是通过调用应用软件的ID进行操作软件,此操作需要用到以下类和工具:
1、安卓自有目录\tools\hierarchyviewer.bat工具可以用来查看应用程序的ID。
操作hierarchyviewer.bat工具步骤:
(1)、启动安卓模拟器,打开需要查看ID的软件界面。此处以google搜索界面为例。然后双击打开hierarchyviewer.bat,显示搜索界面的activity,即下图左侧被选中的项,表示搜索界面的完整包名。
(2)点击Load View Hierarchy按钮,展现该搜索界面的层级图。选中指定的控件,查看ID名称。
在属性显示区域可以看到各个控件所处的坐标位置,以及可以查看模拟器上任务栏的高度,这些信息可以用于坐标计算中。
2、通过EasyMonkeyDevice类和By类来调用控件ID。
一些常用控件的写法如下:
(1)输入框的ID写法:
easy_device.type(By.id('id/name_text),'zhangsan')
(2)复选框/单选/按钮的ID写法:
easy_device.touch(By.id('id/login_button'),MonkeyDevice.DOWN_AND_UP)
(3)当两个ID名称相同时,可以使用层级进行定位
easy_device.touch(By.id('id/parent_button'),MonkeyDevice.DOWN_AND_UP,By.id('id/current_button'),MonkeyDevice.DOWN_AND_UP)
通过ID进行计算器操作示例calculator.py:
from com.android.monkeyrunner import MonkeyRunner,MonkeyDevicefrom com.android.monkeyrunner.easy import EasyMonkeyDevicefrom com.android.monkeyrunner.easy import Byfrom com.android.chimpchat.hierarchyviewer import HierarchyViewer#from com.android.hierarchyviewerlib.device import ViewNodedevice = MonkeyRunner.waitForConnection()package = 'com.android.calculator2'activity = 'com.android.calculator2.Calculator'runComponent = package + '/' + activitydevice.startActivity(component=runComponent)MonkeyRunner.sleep(3.0)easy_device = EasyMonkeyDevice(device) #init easymonkeydevice object must start activity at first.Because the init method will getHierarchyViewer();easy_device.touch(By.id('id/digit7'),MonkeyDevice.DOWN_AND_UP)easy_device.touch(By.id('id/mul'),MonkeyDevice.DOWN_AND_UP)easy_device.touch(By.id('id/digit8'),MonkeyDevice.DOWN_AND_UP)easy_device.touch(By.id('id/equal'),MonkeyDevice.DOWN_AND_UP)MonkeyRunner.sleep(1.0)pic = device.takeSnapshot()pic.writeToFile('D:\\monkeyrunner\\result.png','png')print 'test finished!'
3、运行文件模拟计算7*8=56,生成result.png。monkeyrunner calculator.py
用ID进行参数差不多都是这个思路。但是对于列表、或者弹出框则无法直接通过点击ID操作成功,需要计算ID的坐标。
执行:
1)打开View server 服务 :
adb shell service call window 1 i32 4939
2)cmd 》monkeyrunner calculator.py》回车
- monkeyrunner 使用id——calculator.py 实例
- calculator.py
- Android自动化工具Monkeyrunner使用(六) —— 根据ID查找对象
- Monkeyrunner测试1——Monkeyrunner的使用
- ghost.py 使用实例
- Monkeyrunner实战——自动化脚本——控件id查找——控件id输入
- monkeyrunner 实例
- Monkeyrunner实例
- MonkeyRunner_使用MonkeyRunner对Calculator进行简单的压力测试(脚本示例)
- MonkeyRunner—API篇之MonkeyImage&MonkeyRunner
- 安卓自动化测试工具MonkeyRunner之使用ID
- 转:安卓自动化测试工具MonkeyRunner之使用ID
- 安卓自动化测试工具MonkeyRunner之使用ID
- 安卓自动化测试工具MonkeyRunner之使用ID
- Android自动化工具Monkeyrunner使用(六) —— touch
- monkeyrunner 使用
- monkeyrunner使用
- android自动化测试之MonkeyRunner使用实例(三)
- qemu-img的使用说明
- linux 按文件大小排序和按时间排序查看文件命令
- 获取控制台的窗口句柄
- spring源码学习笔记-初始化(一)-概览
- 两个在IIS上部署网站的错误
- monkeyrunner 使用id——calculator.py 实例
- Builder生成器模式与Composite组合模式
- 研究生导师的肺腑之言
- AtomicBoolean使用
- eclipse Android SDK Manager 下载
- SAP Standard BAPI Error: /AFS/BAPI_SALESORD_CHANGE & BAPI_SALESORDER_CHANGE
- 用VC++实现应用程序窗口的任意分割(2)
- 使用sun.misc.Unsafe获取java对象地址
- 命令提示符关机