• MonkeyServer的使用及自动化


    ●MonkeyServer机制简介

    Monkey可以在设备上启动一个服务端让客户机远程的连接到设备,对设备进行调试和控制

    ●MonkeyServer使用

    •启动MonkeyServer

    adb shell monkey --port 1080 &

    •连接MonkeyServer

    adb forward tcp:1080 tcp:1080 //把PC机的端口映射到设备暴露出来的端口上

    telnet 127.0.0.1 1080 //通过telnet本机连接到MonkeyServer

    ●MonkeyServer的主要命令:   

    •touch [down|up|move] [x] [y]

    •press[keycoe]

    •sleep

    •getvar(获取系统的变量)

    •type (输入一些字符)

    •计算器的例子

    adb shell monkey --port 1080 & //启动MoneyServer

    adb forward tcp:1080 tcp:1080 //把本机的1080端口映射到设备的1080端口

    telnet 127.0.0.1 1080 //通过网络连接命令telnet连接本机的1080端口

    打开计算器

    press KEYCODE_8 //计算器自动输入8

    tap 100 500 //根据坐标自动输入数字

    这个例子说明通过telnet可以完成对设备的控制操作,但是怎么能够对这些操作实现自动化呢?下面介绍   

    ●MonkeyServer命令脚本化(vbs脚本实现对telnet程序的自动化控制)

    ·关键脚本

    set sh=WScript.CreateObject("WScript.Shell")

    WScript.Sleep 1000

    sh.SendKeys "open 127.0.0.1 1080 {ENTER}"

    ·启动命令

    cscript//nologo monkeyServerRun.vbs

    ·计算器的例子

    Text1:.vbs脚本(脚本需放在电脑本地)

    set sh=WScript.CreateObject("WScript.Shell")//启动WScript.Shell

    WScript.Sleep 1000

    sh.SendKeys "open 127.0.0.1 1080 {ENTER}"//通过telnet打开Monkeyserver地址来访问monkeyserver

    WScript.Sleep 1000

    Sh.SendKeys "press KEYCODE_3 {ENTER}"

    WScript.Sleep 1000

    Sh.SendKeys "press KEYCODE_7 {ENTER}"

    WScript.Sleep 1000

    Sh.SendKeys "press KEYCODE_NUMPAD_ADD {ENTER}"

    WScript.Sleep 1000

    Sh.SendKeys "press KEYCODE_2 {ENTER}"

    WScript.Sleep 1000

    Sh.SendKeys "press KEYCODE_1 {ENTER}"

    WScript.Sleep 1000

    Sh.SendKeys "press KEYCODE_NUMPAD_EQUALS {ENTER}"

    WScript.Sleep 1000

    Sh.SendKeys "done {ENTER}"

    WScript.Sleep 1000

    但是monkeyserver并没有提供启动应用的操作,也就是说每次执行monkeyserver指令之前,必须先把被测应用启动起来,这个需要在脚本中有自动启动应用的操作,可以通过批处理脚本来实现。

     

    Text2:.bat脚本(脚本需放在电脑本地)

    adb forward tcp:1080 tcp:1080//做好端口映射

    adb shell am start -n com.android.calculator2/com.android.calculator2.calculator//启动应用

    start telnet.exe//在批处理中启动telnet应用程序

    cscript //nologo monkeyServerRun.vbs//执行脚本

    ·执行MonkeyServer自动打开计算器并且自动计算步骤:

    dir *.script 或dir //查看本地有没有text1和2两个脚本

    adb shell monkey --port 1080 &

    adb forward tcp:1080 tcp:1080

    telnet 127.0.0.1 1080

    monkeyServer.bat//执行批处理

    这就完成了monkeyServer脚本自动化的过程

  • 相关阅读:
    min25筛学习笔记
    【模板】回滚莫队&不删除莫队
    UOJ#188. 【UR #13】Sanrd
    LOJ#572. 「LibreOJ Round #11」Misaka Network 与求和
    Product
    Lcm
    点是否在三角形内的判断
    今天学会了 在Linux下,用GCC编译C语言程序,mark下
    让你沉迷的五种设计
    搞清楚了自发光特效的制作原理,3张图,3个步骤
  • 原文地址:https://www.cnblogs.com/ljf-hero/p/6625305.html
Copyright © 2020-2023  润新知