monkey03--monkey script

执行Monkey脚本的命令

adb shell monkey -f

Monkey Script

1. Dispatch Trackball命令:轨迹球事件

image.png

Dispatch Trackball(long downtime键最初被按下的事件, long eventide事件发生的时间, int action操作是按下还是弹起, float x, float y, float pressure压力事件大小, float size触摸事件大小0到1, int metastate, float xprecision, float yprecision, int device事件来源0表示不来自物理事件, int edgeflags)

主要关注action,x,y这三个参数。比如一个点击事件,需要两次trackball事件,一次action为0,一次action为1。

2. DispatchPointer命令:点击事件

image.png

3. DispatchString命令:输入字符串事件

image.png

4. LaunchActivity命令:启动app

image.png

5. UserWait命令:等待事件(毫秒)

image.png

6. DispatchPress命令:按下键值

image.png

7. 实例

现在来编写一个monkey脚本实例。想完成的操作步骤如下:

image.png

其中我们需要通过工具获取在手机需点击的坐标。通过在android-sdk下的tools文件夹中的uiautomatorviewer工具。

  • 手机连接电脑,并打开浏览器。打开uiautomatorviewer工具,点击左上角图标获取手机的画面元素信息。
  • 点击想要点击的区域。如图我们需要点击搜索框,点击后可以看到右侧显示该元素的信息。
  • 找到bounds这项信息,第一个坐标表示元素左上角坐标,第二个表示右下角坐标。
  • 在脚本中写点击某个坐标时,选择bounds区间内的坐标即可。
image.png

以下是monkey脚本

  • LaunchActivity启动应用,填入应用包名和启动activity名(可使用adb logcat|grep START,再启动应用获取)
  • UserWait(1000)等待1000毫秒
  • Tap(400,400)点击坐标400,400的位置
  • DispatchString(shabi)输入字符串
  • DispatchString(66)相当于按enter,enter的keycode为66,也可写成DispatchString(KEYCODE_ENTER)
  • DispatchString(KEYCODE_HOME)按下手机HOME键
image.png

adb shell是在手机下执行命令。需先将完成后的脚本从电脑传到手机上(这里放在data/local/tmp/路径下)。adb push script01 /data/local/tmp/

运行monky脚本:adb shell monkey -f script01 2

monkey跑script01脚本2次

也可进入手机目录,再用monkey跑

image.png

你可能感兴趣的:(monkey03--monkey script)