MonkeyRunner常用API

xubzhlin 2020-05-10

1、MonkeyRunner API -alert

警告框

void alert(string message,string title,string okTitle)

脚本类型.py

#!/usr/bin/python
#-*- UTF-8 -*-
from com.android.monkeyrunner import MonkeyRunner
MonkeyRunner.alert(‘Hello friends‘,‘This is title‘,‘OK‘)    //message,title,button按钮

执行:monkeyrunner d:\alert.py  //此处alert.py的相对路径为相对monkeyrunner的路径,不是cmd的路径

若运行monkey runner提示:SWT folder ‘..\framework\x86_64‘ does not exist.参考https://www.jianshu.com/p/744324ac6ce8

2、MonkeyRunner API - waitForConnection

等待设备连接,有多个device id,需要指明具体哪个设备。

waitForConnection(float timeout,string deviceid)

float timeout:等待设备的超时时间,单位s

string deviceid:deviceid的字符串名称

3、MonkeyDevice API - drag

拖动

drag(tuple start,tuple end,float duration,integer steps)

start:起点位置

end:终点位置

duration:手势持续时间

steps:步数,默认是10

4、MonkeyDevice API - press

按键

press(string keycode,dictionary type)

keycode:键的keycode值

dictionary type:Down、UP、DOWN_AND_UP(按下、弹起、按下并弹起)

5、MonkeyDevice API - startActivity

启动应用

startActivity(package+‘/‘+activity)

6、MonkeyDevice API - touch

点击

touch(integer x,integer y,integer type)

x坐标值

y坐标值

type:DOWN,UP,DOWN_AND_UP(按下、弹起、按下并弹起)

7、MonkeyDevice API - type

输入

type(string message)

8、MonkeyDevice API - takeSnapshot

截屏

MonkeyImage takeSnapshot()

9、MonkeyImage API - sameAs

图像对比

boolean sameAs(MonkeyImage other,float percent)

10、MonkeyImage API - writeToFile

保存图像文件

void writeToFile(string path,string format)

string path:图像保存路径

string format:图像保存类型

实现在搜索框中输入查询词,并截图

#!/usr/bin/python
# -*- coding: utf-8 -*-
#   __author__:汤继光
#   2020-05-10
from com.android.monkeyrunner import MonkeyRunner,MonkeyDevice,MonkeyImage
#连接设备
device=MonkeyRunner.waitForConnection(3,"127.0.0.1:62001")
#启动APP
device.startActivity("com.UCMobile.x86/com.uc.browser.InnerUCMobile")
#等待2s
MonkeyRunner.sleep(2)
#点击搜索框
device.touch(500,250,"DOWN_AND_UP")
MonkeyRunner.sleep(1)
#输入查询词
device.type("test")
MonkeyRunner.sleep(1)
#点击回车键进行搜索
device.press(‘KEYCODE_ENTER‘,‘DOWN_AND_UP‘)
MonkeyRunner.sleep(6)
#截图
image=device.takeSnapshot()
image.writeToFile(‘./test.png‘,‘png‘)

补充说明:

monkeyrunner需依靠python多线程或循环操作执行重复的操作过程

相关推荐