Android自动化测试之MonkeyRunner录制和回放脚本(四)
来源:互联网 发布:python软件哪里下载 编辑:程序博客网 时间:2024/05/17 15:01
测试脚本录制:
方案一:
我们先看看以下monkeyrecoder.py脚本:
- #Usage: monkeyrunner recorder.py
- #recorder.py http://mirror.yongbok.net/linux/ ... ey_recorder.py ;
- com.android.monkeyrunner import MonkeyRunner as mr
- com.android.monkeyrunner.recorder import MonkeyRecorder as recorder
- device = mr.waitForConnection()
- recorder.start(device)
- #END recorder.py
首先,连接你已经打开调试模式的ANDROID设备或模拟器,然后运行上面的脚本,例如在cmd窗口中执行命令: monkeyrunner monkeyrecoder.py
执行下面的代码后,将运行录制脚本的程序:
#Press ExportAction to save recorded scrip to a file
#Example of result:
#PRESS|{""name"":""MENU"",""type"":""downAndUp"",}
#TOUCH|{""x"":180,""y"":175,""type"":""downAndUp"",}
#TYPE|{""message"":"""",}
=================================================
这种脚本需要另外一个monkeyrunner的脚本来解释执行。monkeyplayback.py
- #Usage: monkeyrunner playback.py "myscript"
- #playback.py http://mirror.yongbok.net/linux/ ... ey_playback.py ;
- import sys
- com.android.monkeyrunner import MonkeyRunner
- # The format of the file we are parsing is very carfeully constructed.
- # Each line corresponds to a single command. The line is split into 2
- # parts with a | character. Text to the left of the pipe denotes
- # which command to run. The text to the right of the pipe is a python
- # dictionary (it can be evaled into existence) that specifies the
- # arguments for the command. In most cases, this directly maps to the
- # keyword argument dictionary that could be passed to the underlying
- # command.
- # Lookup table to map command strings to functions that implement that
- # command.
- CMD_MAP = {
- ""TOUCH"": lambda dev, arg: dev.touch(**arg),
- ""DRAG"": lambda dev, arg: dev.drag(**arg),
- ""PRESS"": lambda dev, arg: dev.press(**arg),
- ""TYPE"": lambda dev, arg: dev.type(**arg),
- ""WAIT"": lambda dev, arg: MonkeyRunner.sleep(**arg)
- }
- # Process a single file for the specified device.
- def process_file(fp, device):
- for line in fp:
- (cmd, rest) = line.split(""|"")
- try:
- # Parse the pydict
- rest = eval(rest)
- except:
- print ""unable to parse options""
- continue
- if cmd not in CMD_MAP:
- print ""unknown command: "" + cmd
- continue
- CMD_MAP[cmd](device, rest)
- def main():
- file = sys.argv[1]
- fp = open(file, ""r"")
- device = MonkeyRunner.waitForConnection()
- process_file(fp, device)
- fp.close();
- if __name__ == ""__main__"":
- main()
=================================================
Usage:monkeyrunner playback.py "myscript"
0 0
- Android自动化测试之MonkeyRunner录制和回放脚本(四)
- Android自动化测试之MonkeyRunner录制和回放脚本(四)
- android自动化测试之--MonkeyRunner录制和回放脚本(四)
- Android自动化测试之MonkeyRunner录制和回放脚本
- Android自动化测试之MonkeyRunner录制和回放脚本(十一)
- 【Android测试】MonkeyRunner之录制回放
- 安卓自动化测试工具MonkeyRunner之录制回放
- 安卓自动化测试工具MonkeyRunner之录制回放
- monkeyrunner自动化测试工具--录制回放
- Android自动化工具Monkeyrunner使用(七) —— 录制、回放脚本
- Monkeyrunner 录制脚本&回放
- MonkeyRunner之MonkeyRecorder录制回放脚本
- monkeyrunner之monkeyrecorder录制回放脚本
- monkeyrunner学习笔记四(录制和回放)
- monkeyrunner(3)录制与回放脚本
- Android Monkeyrunner的录制和回放功能
- Android自动化测试之Monkeyrunner 脚本编写
- Android自动化测试之Monkeyrunner 脚本编写
- 4Fang打印控件直接指定打印机打印网页
- UISearchBar 如何隐藏按钮
- Winform TextBox中只能输入数字的几种常用方法(C#)
- Writing and Compiling A Simple Program For OpenWrt
- HWM&&碎片整理之move操作
- Android自动化测试之MonkeyRunner录制和回放脚本(四)
- 牛顿迭代法解非线性方程组(MATLAB版)
- ANDROID中的(udev)VOLD分析
- tiny210(s5pv210)移植u-boot(基于 2014.4 版本)——命令补全和历史命令
- 代理技术
- 后台执行命令
- 一张图理解OpenStack Neutron中的调用
- Linux rpm 命令参数使用详解
- 《大话移动APP测试:Android与 iOS应用测试指南 》