Monkeyrunner基于python编写脚本通用方法

143 阅读2分钟

大家想写脚本,想用monkeyrunner,但又不知道怎么写,又没有python基础,怎么办?

这里我给大家准备了一个模板,大家可以举一反三,写出自己想要的测试步骤,至于如何判断,我这里没有判断,只是在给某处添加截图的条件,到时查看截图;

以下基于某公司手机独立呼叫的方法,136是个自定义的呼叫物理键,大家根据自己的实际情况添加键值或者采用坐标方式,目的是让手机按照自己的想法运行起来,想在那个地方加入截图就在那个地方加上(不管白猫黑猫,抓到老鼠就是好猫)。非常简单粗暴;

一、安装部署

其实都不需要安装,我们有eclipse就行,依赖java环境,做java的就会有,没有就要下载安装配置环境变量等

只要进入到这个路径下就可以使用了

一般执行命令是:monkeyrunner xxx.py

二、脚本

xxx.py脚本:

import os
import sys
import time
from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice, MonkeyImage


rootpath  = os.path.split(os.path.realpath(sys.argv[0]))[0]
screenPath = "D:\\ceshi\\1\\" #保存路径


device = MonkeyRunner.waitForConnection()
MonkeyRunner.sleep(1)#休眠1s
for i in range(0,100):#循环100次


device.press('KEYCODE_136',MonkeyDevice.DOWN)#按下呼叫键
MonkeyRunner.sleep(10) #休眠,按下呼叫键多久
device.press('KEYCODE_136',MonkeyDevice.UP)#松开呼叫键
MonkeyRunner.sleep(3)#休眠,多久后进行下次操作


 result1 = device.takeSnapshot().getSubImage((0, 0, 530, 950)) #截图整屏
 now = time.strftime("%Y-%m-%d-%H-%M-%S") #获取本地时间,然后命名,防止覆盖上张图片
 result1.writeToFile(screenPath + now + '.png','png')#截图


device.press('KEYCODE_136',MonkeyDevice.DOWN)
MonkeyRunner.sleep(3)#休眠
device.press('KEYCODE_136',MonkeyDevice.UP)
MonkeyRunner.sleep(3)#休眠


device.press('KEYCODE_136',MonkeyDevice.DOWN)
MonkeyRunner.sleep(3)#休眠
device.press('KEYCODE_136',MonkeyDevice.UP)
MonkeyRunner.sleep(2)#休眠


device.touch(455,909,"DOWN_AND_UP")  #点击坐标(点击挂断)
MonkeyRunner.sleep(5)#休眠


 result1 = device.takeSnapshot().getSubImage((0, 0, 530, 950)) #截图整屏
 now = time.strftime("%Y-%m-%d-%H-%M-%S") #获取本地时间,然后命名,防止覆盖上张图片
 result1.writeToFile(screenPath + now + '.png','png')#截图

---------------------------------完,不明白的给我留言·······················

作者:享有盛誉之名