您的位置:首页 > 移动开发

1android app 压力测试(二)

2017-05-26 18:29 239 查看
这篇文章介绍MonkeyScript 和MonKeyRunner脚本中常用的一些方法

MonkeyScript
    执行Monkey脚本的命令:
         adb  shell monkey -f <scriptfile> <event-count>
               scri[tfile:脚本文件的名字
               event-count:执行的次数
     写脚本用到的方法:
           1.DispatchTrackball  轨迹运行事件
                   


           2.ispatchointer  点击事件
                   


          3.DispatchString  输入字符串
                      DispatchString(String  x)
          4.LaunchActivity  启动应用
                       LaunchActivity(package,activity)
                       package:包名
                        activity:启动的activity界面
           5.userWait(1000)毫秒,等待事件
           6.DispatchPress  按下键值
                    DispatchPress(Int  keycde)回车键的keycode是66
注:在执行该脚本时需要确认要启动的界面是否允许被其他app启动的(在AndroidManifest中设置对应的exported的值为true)
        这个工具没有调试的功能

MonkeyScript脚本的书写
    后缀是.script,需要放到手机的/data/local/tmp/目录下
    eg:

       type=user

       count=10

       speed=1.0

       start data >>

       Activity(com.android.lxy,.MainActivity)

       UserWait(2000)

       DispatchPointer(10,10,0,100,100,1,1,-1,1,1,0,0)

       DispatchPointer(10,10,1,100,100,1,1,-1,1,1,0,0)

       DispatchString(test)

       
MonkeyRunner
    有三个API:
            MonkeyRunner:用来链接设备
            MonkeyDevice:提供安装、卸载应用,发送模拟事物
            MonkeyImage:完成图像保存,及对比的操作
         可以进行多设备控制,功能测试,回归测试。

    执行的语句是:   monkeyRunner  脚本名字
          (前提是先连接手机,并进入到android sdk的tools目录下)

    脚本中常用到的方法简介:
       1.  MonkeyRunner-----alert 警告框
               void alert(String Message, String title,String oktitle)
                     Message:警告框的内容
                      title:警告框的标题
                     oktitle:button按钮
        2.MonkeyRunner-----waitForConnection
               等待设备链接,有多个device id,需要指明具体的设备
               waitForConnection(float timeout,String deviceid)
                      timeout:链接超时时间
                       deviceid:设备名称 ,查看方法adb devices

        3.MonkeyImage  -----writeToFile保存图像文件
                 void  writeToFile(String path,String format)
                     path:保存的路径
                     format:图像保存的类型,png、jpg  
        4.MonkeyImage ------ sameAs  图像对比
                 boolean  sameAs(MonkeImage  other,float percent)
                         other:图像名称
                         percent:相似度的百分比
         5.MonkeyDevice ----- drag 拖动
                 drag(tuple start,tuple end,float duration, interge steps)
                        start:起始点
                        end:目标点
                        duration:手势持续时间
                        steps:拖动操作几步,默认是10
         6.MonkeyDevice ----- press 按键操作
                 press(String  package,dictionary type)
                          package:按键名
                          type: DOWM、UP、DOWN_AND_UP
        7.MonkeyDevice --- startActivity 启动应用
                startActivity(package+'/'+activity)
                          package:包名
        8.MonkeyDevice --- touch 点击
                touch(integer x,integer y , integer type)
                          type: DOWM、UP、DOWN_AND_UP 
        9.MonkeyDevice --- type 输入
                 type(String message)
        10.MonkeyDevice --- takeSnapshot 截屏
                  MonkeyImage  takeSnapshot();
 
   MonkeyRunner脚本的书写(后缀是.py):
       #!/user/bin/python  用的语言
       #_*_UTF-8 _*_  编码
       form com.android.monkeyrunner import MonkeyRunner  导包
          MonkeyRunner.alert('hello' , 'title' , 'ok') 
   
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: