从侧计----monkeyrunner1

一、monkeymonkeyrunner比较:

        monkey:较难支持插件编写;无截屏功能;对数据流控制能力弱;无法完成录制功能。

 

二、monkeyrunnerAPI分为三类

           1、monkeyrunner API:提供用于连接monkeyrunner和设备的方法;其中有一个方法waitforConnection()引出monkeyDevice

            2、MonkeyDevice API:提供安装卸载应用、启动应用、发送按键和触摸事件等操作的方法;其中一个方法takeSnapshot()引出monkeyImage

                        (1) broadcastIntent()发送广播         (2) drag()拖动

                        (3) getProperty()获取当前设备属性     (4) touch()点击

                        (5) type()输入         (6) wake()唤醒设备          (7) press()按键

               3、monkeyImage API:提供图像保存、格式转换、图像截取和坐标点获取等方法。

 

三、monkeyrunner的基本API:手势、输入、点击

            1、拖拽手势操作:如touchholdmove

            (1void drag(start,end,duration,steps)

                            start:起始位置坐标;数据类型为tuple数组形式

                            end:终止位置坐标;数据类型为tuple数组形式

                            duration:持续时间;数组类型为float;默认值为:1.0

                            steps:步数;数据类型为integer;默认值为10

                    (2)脚本式例:

                  如:向左滑动切换界面

                            #固定格式,导入MonkeyDevice API

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

 

                            #设置拖动元素的值

                            start = (400,200) # 初始坐标值

                            end = (60,200) # 结束坐标值

                            duration = 1.0 # 持续时间(拖动时间)1.0

                            steps = 10

 

                            #连接monkeyrunner

                            device = MonkeyRunner.waitForConnection()

 

                            #执行拖动操作以滑动屏幕

                            device.drag(start,end,duration,steps)

            2、输入操作void type(message)

                    message:输入的字符串;数据类型为String

            3、点击操作void touch(x,y,type)

                    x:坐标值x;数据类型integer

                    y:坐标值y;数据类型integer

                    typekey event按键类型;数据类型integer;如:DOWNUPDOWN_AND_UP

四、脚本式例:

        实现目标:安装某应用并启动,打开文本框输入账号abc和密码111,登陆成功后滑动到第二页查看信息。


            #固定格式,导入MonkeyDevice API

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

 

            #设置具体元素值:touch()点击文本框、type()输入字符串、drag()拖动界面

            #drag(start,end,duration,steps)type(message)touch(x,y,type)

            x1 = 290

            y1 = 330 # 账号文本框坐标

            x2 = 290

            y2 = 430 # 密码文本框坐标

            x3 = 380

            y3 = 550 # 登陆坐标

            type = DOWN_AND_UP

            second1 = 2

            second2 = 1

            second3 = 3

            message1 = abc

            message2 = 111

            start = (670,860)

            end = (95,860)

            duration = 1.0

            steps = 10

 

            #设置启动的包名和启动应用的主界面名并添加分隔符“/

            package = ‘com.wuba.zhuanzhuan’

            activity = ‘.presentation.view.activity.LaunchActivity’

            component = package +’/’+ activity

 

            #连接monkeyrunner

            device = MonkeyRunner.waitForConnection()

 

            #安装wuba.zhuanzhuan.apk

            device.installPackage(‘./wuba.zhuanzhuan.apk’)

            print ‘Installing wuba.zhuanzhuan.apk...’

 

            #启动app

            device.startActivity(component)

            print ‘Launching zhuanzhuan...’

 

            #等待几秒钟使主界面加载完毕

            MonkeyRunner.sleep(second1)

 

            #打开文本框并输入账号和密码

            device.touch(x1,y1,type)

            device.type(message1)

            device.press(‘KEYCODE_ENTER’ , ’DOWN_AND_UP’)   #按下虚拟键盘中的enter键并发送,以确保字符串能够输入

            device.touch(x2,y2,type)

            device.type(message2)

            device.press(‘KEYCODE_ENTER’ , ’DOWN_AND_UP’)

 

            #等待1秒钟使之加载完毕

            MonkeyRunner.sleep(second2)

 

            #点击登陆按键

            device.touch(x3,y3,type)

 

            #等待几秒钟确保登陆并加载界面完成

            MonkeyRunner.sleep(second3)

     

            #向左滑动查看界面

            device.drag(start,end,duration,steps)

 

            #等待几秒钟确保加载界面完成

            MonkeyRunner.sleep(second3)

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值