monkey框架测试

https://www.cnblogs.com/Chilam007/p/10941040.html(常见事件)
https://blog.csdn.net/github_2011/article/details/79031339(日志分析)
https://www.cnblogs.com/JianXu/p/5164011.html(monkey 的API)
https://www.cnblogs.com/mgzc-1508873480/p/7911373.html(monkey简介API)
https://www.cnblogs.com/bluestorm/p/4886662.html(Android KeyCode列表)

APP测试常见adb命令
1)连接设备常用命令
查看adb 版本号:adb version
连接设备 :adb connect ip地址:端口号(adb connect 127.0.0.1:62001)
结束adb服务名:adb kill-server(常用于手机断掉连接或连接不成功)
启动adb服务命:adb start-server
查看设备状态:adb get-state(devise,offline,unknown)
重启设备:adb reboot

2)操作APP或文件常用命令
打印当前所有的连接设备:adb devices
操作指定设备:adb -s 设备名称 option (adb -s 127.0.0.1 shell)
设备中安装apk文件: adb install 包名
卸载应用:adb uinstall 包名
把设备中的文件导入pc端:adb pull 文件路径(Android端)文件路径(pc端)(adb pull /sdcard/server.log C:\Users\Administrator\Desktop\1\apk)注意:不可以是文件夹
把pc端的数据导入设备中:adb push 文件路径(PC端)文件路径(Android端)(adb -s 127.0.0.1 push C:\Users\Administrator\Desktop\1\apk\test.txt /)
进入设备: adb shell(进入设备后,其他命令基本和Linux命令)
查看第3方安装应用:adb shell pm list package -3
查看应用安装路径:adb shell pm path 包名(adb shell pm path org.yxsoftdev.gamelibo2)
查看应用安装所在的路径:adb shell pm list packages -f(pm list packages -f | grep 包名(在设备才可以执行该命令))
查看包的activity命令:aapt dump badging 路径(PC端的apk所在的路径)

3)monkey常用参数
帮助:adb shell(命令) monkey -h
打印日志级别: adb shell monkey -v (0级,启动提示,测试完成,最终结果)-v(提供详细的测试信息)-v(提供安装信息)200(随机事件)
重复上一次步骤:adb shell monkey -s speed event-count(adb shell monkey -s 1111 200)
执行指定的脚本: adb shell monkey -f 脚本名称(路径)(adb shell monkey -f /sdcard/33.txt -v 1)
添加执行间隔时间:adb shell monkey --throttle 时间(以毫秒为单位)(adb shell monkey --throttle 1000 200)
调整事件的百分比:adb shell monkey --事件 百分比 event-count(adb shell monkey --pct-touch 10 200)
事件:
触摸事件:–pct-touch
手势事件:–pct-motion
轨迹事件:–pct-trackball
导航事件:–pct-nav
系统事件:–pct-syskeys
启动事件:–pct-appswitch
运行指定的约束包:adb shell monkey -p 包名(多个包名)
当程序发生许可错误导致的异常时,Monkey仍进行:adb shell monkey --ignore-security-exception
常见异常:crash(闪退),exception(异常),ANR(无响应),force close(强制退出)

4)monkey常见API
LaunchActivity(pkg_name, cl_name):启动应用的Activity
Tap(x, y, tapDuration):模拟一次手指单击事件
DispatchPress(keyName): 按键,android自带的home,back键等
PressAndHold(x, y, pressDuration): 模拟长按事件。
DispatchString(input): 输入字符串
Drag(xStart, yStart, xEnd, yEnd, stepCount): 用于模拟一个拖拽操作。
UserWait(sleepTime): 休眠一段时间
LongPress(): 长按2秒。

5)脚本
type = raw events
count = 1
speed = 1.0
start data >>

LaunchActivity(org.yxsoftdev.gamelibo2,org.cocos2dx.lua.AppActivity)//启动app
UserWait(1000)

Tap(228,101,100)//点击app
UserWait(10000)

Tap(994,578,100)//点击快速登录
UserWait(10000)

Tap(1224,59,100)//点击设置按钮
UserWait(10000)

Tap(639,450,100)//点击切换按钮
UserWait(10000)

Tap(630,584,100)//点击微信登录
UserWait(10000)
DispatchPress(KEYCODE_BACK)//点击返回按钮,取消键盘输入
UserWait(1000)
DispatchPress(KEYCODE_BACK)//点击返回按钮,返回界面
UserWait(10000)

Tap(827,502)//点击取消按钮
UserWait(10000)

Tap(297,597,100)//点击登录按钮
UserWait(10000)

Tap(396,262,100)
DispatchString(a12345)
Tap(367,396,100)
DispatchString(a123456)
DispatchPress(KEYCODE_BACK)//点击返回按钮,取消键盘输入
UserWait(100)

Tap(639,529,100)//点击登录按钮
UserWait(10000)
6)脚本编写注意事项:
1)一定要写注释,不然下次想改脚本,不知道写了什么鬼
2)编写时可以使用notePad++等编辑工具编写较方便,能够快速区分中英文(进入系统,cat一下就知道写错了啥)
3)睡眠时间要控制好,过长浪费时间,过短就导致乱点(调试脚本时可以适当的控制时间长短)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值