安卓app测试之Monkeyscript
MonkeyScript是一组可以被Monkey识别的命令集合
- 优点:MonkeyScript可以完成重复固定的操作
- 使用:adb shell monkey -f <scriptfile> <event-count>
一、MonkeyScript命令
1、DispatchTrackball —— 轨迹球事件
DispatchTrackball(long downtime,long eventtide,int action,float x,float y,float pressure,float size,int metastate,float xprecision,float yprecision,int device,int edgeflags)
【注意:按一个键需要两个轨迹球事件】
参数详解:
- long downtime指键最初被按下的时间
- long eventtide指事件发生的时间
- int action指具体操作的动作,如按下
- float x,float y指x和y的坐标
- float pressure压力事件的大小(0~1)
- float size指触摸的记事值(0~1)
- int metastate指当前按下mate键的标识
- float xprecision,float yprecision指x和y坐标的精确值
- int device事件的来源(0~x)
- int edgeflags指超出屏幕了范围
- action:0代表按下,1代表弹起
2、DispatchPointer ——点击事件
DispatchPointer(long downtime,long eventtide,int action,float x,float y,float pressure,float size,int metastate,float xprecision,float yprecision,int device,int edgeflags)
【注意:按一个键需要两个点击事件】
3、DispatchString——输入字符串命令
DispatchString(String text)
4、LaunchActivity —— 启动应用
LaunchActivity(package,Activity)
5、UserWait—— 等待事件
UserWait(1000)
6、DispatchPress——按下键值
DispatchPress(int keycode) ——keycode 66 回车键
二、MonkeyScript实战
在搜索框中输入查询词 —— 思考? 完成这个操作需要哪几步操作?
需要11个步骤:
1、启动App
2、点击地址栏
3、删除原有地址
4、输入www.baidu.com
5、点击回车键,让新地址到地址栏中
6、点击回车
7、点击搜索框
8、输入Helloween
9、点击回车键,让查询词到搜索框中
10、点击搜索按钮
11、等待结果
新建script文件:脚本如下显示:
typ=user
count=10
speed=1.0
start data >>
LaunchActivity(com.android.browser,com.android.browser.BrowserActivity)
UserWait(5000)
DispatchPointer(10,10,0,200,100,1,1,-1,1,1,0,0)
DispatchPointer(10,10,1,200,100,1,1,-1,1,1,0,0)
DispatchPress(112)
DispatchString(www.baidu.com)
DispatchPress(66)
UserWait(10000)
DispatchPointer(10,10,0,300,400,1,1,-1,1,1,0,0)
DispatchPointer(10,10,1,300,400,1,1,-1,1,1,0,0)
UserWait(1000)
DispatchString(besttest)
UserWait(3000)
DispatchPress(66)
UserWait(10000)
三、注意事项
- 脚本需要push到手机中才可以——push monkey.script /data/local/tmp
- 没有调试的功能,需要自己仔细去找问题
- 如果启动时并不是自己要测试的App,需要开发在Android的配置文件中加入相关配置 ——android:exported=”true”
安卓app测试之Monkeyscript的更多相关文章
- 安卓app测试之cpu监控
安卓app测试之cpu监控,如何获取监控的cpu数据呢? 一.通过Dumpsys 来取值 1.adb shell dumpsys cpuinfo 二.top 1.top -d 1|grep packa ...
- 安卓app测试之Monkey日志分析《转载》
安卓app测试之Monkey日志分析 链接:https://www.cnblogs.com/wuzm/p/10965762.html
- 安卓APP测试之使用Burp Suite实现HTTPS抓包方法
APP的测试重点小部分在APP本身,大部分还是在网络通信上(单机版除外).所以在安卓APP测试过程中,网络抓包非常重要,一般来说,app开发会采用HTTP协议.Websocket.socket协议,一 ...
- 安卓app测试之内存分析
一.内存分析步骤 1.启动App. 2.使用monitor命令打开:ADM(包含DDMS) ->update heap 3.操作app,点几次GC 4.dump heap 5.hprof-con ...
- 安卓app测试之Monkey日志分析
转:原文:https://blog.csdn.net/a136332462/article/details/76066909 一.一般测试结果分析-搜索关键字: 1.无响应问题可以在日志中搜索 “A ...
- 安卓app测试之Monkey测试
一.Monkey特点 1.运行时机:一般是产品稳定后 首轮功能测试完成的夜间进行 2.需要知道packageName 3.目的:主要测试产品是否存在崩溃问题和ANR问题. 二.获取包名的两个方法 首先 ...
- 安卓app测试之启动时间和电量监控
一.启动时间监控 通过adb命令获取 adb shell am start -W /<packageName> /<activityName> 案例: adb shell am ...
- 安卓app测试之流量监控
一.查看PID 通过ps命令查看:ps | grep packageName 案例:adb shell "ps | grep tv.danmaku.bili" adb shell ...
- 安卓app测试之内存监控
一.通过Dumpsys 来取值 1.adb shell dumpsys meminfo 获取的所有进程的内存信息,以及总内存,剩余内存,使用的内存等信息. 2.想获得某一进程内存的详细信息,在后面加上 ...
随机推荐
- hdu oj 3127 WHUgirls(2009 Asia Wuhan Regional Contest Online)
WHUgirls Time Limit: 3000/2000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) Total ...
- 【CERC2008】【BZOJ4319】Suffix reconstruction
Description 话说练习后缀数组时,小C 刷遍 poj 后缀数组题. 各类字符串题闻之丧胆.就在准备对敌方武将发出连环杀时,对方一记无中生有,又一招顺 手牵羊.小C 程序中的原字符数组就被牵走 ...
- 用C# (.NET Core) 实现抽象工厂设计模式
用C# (.NET Core) 实现抽象工厂设计模式 本文的概念性内容来自深入浅出设计模式一书. 上一篇文章讲了简单工厂和工厂方法设计模式 http://www.cnblogs.com/cgzl/ ...
- Session与Cookie解析
Session和Cookie这两个对象也接触了比較长的时间了,今天就来总结一下. 首先,他们都是会话跟踪中经常使用的技术.Cookie在client记录信息来确定用户身份,Session在服务端记录信 ...
- docker 默认用户和密码
windows 下安装docker依赖boot2docker镜像默认用户和密码 标签: dockerroot密码 2017-03-26 14:13 2796人阅读 评论(0) 收藏 举报 分类: 虚 ...
- Android ListView的item点击无响应的解决方法
假设listitem里面包含button或者checkbox等控件,默认情况下listitem会失去焦点,导致无法响应item的事件,最经常使用的解决的方法 是在listitem的布局文件里设置des ...
- Grunt学习日记
Grunt和 Grunt 插件是通过npm安装并管理的, npm是Node.js的包管理器. 第一步:先安装node.js环境 第二步:安装Grunt-CLI 在node.js命令工具中输入npm i ...
- 阿里电话面试问题----100万个URL怎样找到出现频率最高的前100个?
内推阿里电话面试中面试官给我出的一个题: 我想的头一个解决方式.就是放到stl 的map里面对出现的频率作为pair的第二个字段进行排序.之后依照排序结果返回: 以下口说无凭,show your co ...
- LightTable的结构(一)
LightTable使用clojurescript来生成js,然后使用 node-webkit 来处理UI clojurescript非常适合做抽象程度很高的页面和编辑逻辑结构设计, 最近会对整体进行 ...
- Android源码的下载、编译与导入到Android Studio【转】
本文转载自:http://wl9739.github.io/2016/05/09/Android%E6%BA%90%E7%A0%81%E7%9A%84%E4%B8%8B%E8%BD%BD%E3%80% ...