MonkeyRunner浅谈和入门

MonkeyRunner这货的背景么~不多说,谷歌亲儿子,不过是最傻乎乎的一个,从名字来讲,比Monkey年龄大点~因为它已经会跑了。。它的优点么,就是指哪点哪。不像有些框架很矫情,一定要源代码,不能跨应用,不能怎样怎样~~不然我就罢工咯。。。但是缺点么,很明显,也是指哪点哪,由于MonkeyRunner的脚本一般都是根据屏幕坐标来做,换了分辨率,马上不好使,而你指的点是屏幕坐标点,不同的分辨率上相同坐标的位置肯定是不同的~所以,你懂的,一换分辨率马上玩完~特别是写起来特别费劲,因为要找坐标。。

接下来,不扯淡了,直接上干货。


步骤一、环境

请自行搭建Android的adb环境,百度一搜漫山遍野的,我就不多说了


步骤二、创建文件

建个写MonkeyRunner的文件,最好.py后缀,因为这货的语法是python的远房亲戚,当然你非要不用.py结尾也没关系


步骤三、码!

不多说,直接上示例代码~


#代码注释请用左侧这个符号即可

#首先,导入几个包

from com.android.monkeyrunner import MonkeyRunner,MonkeyDevice,MonkeyImage

device = MonkeyRunner.waitForConnection()

#下面这行是加载该路径图片赋值给picture,路径请酌情修改,嗯python的赋值,基本什么都能给的

picture = MonkeyRunner.loadImageFromFile('d:/screenshot/example/1.png')

a=1

b=‘.png'

#写个循环,python是缩进式语法,所以请注意缩进~

for i in range (1,3):

    o=str(a)+b

#输入字符串

    device.type(“456785454123569875")

#点击屏幕900,1500的位置

    device.touch(900,1500,”DOWN_AND_UP”)

#拖动,从200,1600,拖动到200,600,用时0.5秒,分2步进行

    device.drag((200,1600),(200,600),0.5,2)

#歇二秒

    MonkeyRunner.sleep(2)

#截图并将图片赋值给result

    result = device.takeSnapshot()

#将result中的图片写入文件

    result.writeToFile(‘d:/screenshot/example/'+o,'png')

#图片对比一下咯,相似度0.6就给过!

    if result.sameAs(picture,0.6):

#哦耶过了!

        print "pass"

    else:

#可惜没过

        print "fail"

    MonkeyRunner.sleep(1)

    a=a+1

    MonkeyRunner.sleep(3)

#点击back键

    device.press('KEYCODE_BACK',MonkeyDevice.DOWN_AND_UP)

    MonkeyRunner.sleep(1)


嗯,楼上注释已经解释的很清楚了吧?


步骤四、执行

然后请保存文件,连上手机,打开命令框,什么cmd,终端之类的各种叫法,然后输入,adb空格monkeyrunner空格拖入刚才保存的文件,回车观看手机屏幕


附录:

有人估计会问,坐标怎么来?

步骤如下:

1、点击设置

2、请找到开发人员选项

3、进入开发人员选项

4、找到指针位置开关

5、勾上该指针位置开关

预期结果:

手指触摸屏幕时,出现触摸痕迹,顶部显示当前手指触摸的坐标

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值