cmd与monkey测试
monkey测试的相关命令
monkey命令格式:
启动安卓模拟器/真机
点击运行->输入cmd->进入命令行界面
查看设备连接情况,adb devices
在命令行界面输入monkey命令
-p 用于约束一个限制,例如只想测试某一个app
adb shell monkey --作为整机测试
adb shell monkey -p [包名] 100(触发次数) 作为对一个app进行测试
-s 用于复现异常使用
adb shell monkey -p [包名] -s 100 99
-v 用于指定反馈信息的日志级别 总共分3个级别
-v 是一个 level0
-v -v level1
-v -v -v level2
adb shell monkey -p [包名] -s 100 -v -v -v 99 显示日志信息
adb shell monkey -p [包名] -s 100 -v -v -v 99 >D:\monkey.txt 保存日志到本地
--throttle <毫秒> 用于延长点击时间
adb shell monkey -p [包名] -s 100 -v -v -v --thrrottle 500 99 >D:\monkey.txt
--randomize-throttle 在事件之间插入随机延迟 随机延迟范围为0到throttle设定的时间,单位为毫秒
--pkg-whitelist-file 白名单,后面接txt文件
用命令将白名单推送到手机中,adb push <本地路径文件> /data/local/tmp
用命令 adb shell monkey --pkg-whitelist-file /data/local/tmp/whitelist.txt 100(100指的是测试次数)
--pkg-blacklist-file 黑名单,后面接txt文件
用命令将白名单推送到手机中,adb push <本地路径文件> /data/local/tmp
用命令 adb shell monkey --pkg-blacklist-file /data/local/tmp/whitelist.txt 100(100指的是测试次数)
monkey常见参数-百分比事件
--pct-touch {+百分比}:0
翻译触摸,触摸事件泛指发生在某一位置的一个down-up事件,点击
adb shell monkey -p cn.trichat.angus999 --pct-touch 10 10
--pct-motion {+百分比}:1
翻译动作,动作事件泛指从某一位置接下(即down事件)后经过一系列伪随机事件后弹出(即up事件)
--pct-pinchzoom {+百分比}:2
翻译二指缩放,智能机上的放大缩小手势操作事件
--pct-trackball {+百分比}: 3
翻译轨迹,轨迹事件包括一系列的随机移动,以及偶尔跟随在移动后面的点击事件
--pct-rotation {+百分比}:4
翻译屏幕旋转,横屏竖屏事件
--pct-nav {+百分比}:5
翻译基本导航,基本导航事件主要来自方向输入设备的上、下、左、右事件
--pct-majornav {+百分比}:6
翻译主要导航,主要导航事件通常指引发图形界面的一些动作,如键盘中间按键、返回按键、菜单按键等
--pct-syskeys {+百分比}:7
翻译系统按键,系统按键事件通常指仅供系统使用的保留按键,如HOME键、BACK键、拨号键、挂断键、音量键等
--pct-appswitch {+百分比}:8
翻译应用启动,应用启动事件(activity launches)即打开应用,通过调用startActivity()方法最大限度地开启该package下的所有应用
--pct-flip {+百分比}:9
翻译翻转,键盘轻弹百分比,如点击输入框,键盘弹起,点击输入框以外区域,键盘收回
--pct-anyevent {+百分比}:10
翻译其他类型,其他类型事件指上文中未涉及的所有其他事件,如keypress、不常用的button等
日志分析
adb devices --检测设备
list of devices attached 设备列表
adb connect 127.0.0.1:62001
-- 用于连接模拟器设备
adb pull <手机路径文件> <本地路径>
-- 文件从手机端复制到本地
adb push <本地路径文件> <手机路径>
-- 文件从本地端复制到手机端
adb logcat 打印日志
adb logcat >D:logcat.log 用于将日志输出到本地路径 然后用ctrl+终止,日志会在logcat.log中
adb install xxx.pak 安装apk命令,success说明已经按照好了。
adb uninstall com.tencent.mobileqq --卸载应用
adb uninstall -k com.tencent.mobileqq -- 卸载应用但保留数据和缓存文件
adb shell dumpsys activity | find mFocusedActivity --查看前台应用activity名(前两天从Android 7.0升级到Android 8.0,今天在用 adb shell dumpsys activity | findstr "mFocusedActivity"来获取当前活跃的activity时,发现什么也没得到,后来百度得知,命令换了,应该用 adb shell dumpsys activity | findstr "mResumedActivity")
全民养牛包名:cn.trichat.angus999
adb connect/disconnect 通过wifi进行远程连接手机进行调试
adb tcpip 5555 确定手机端和电脑端的wifi通讯端口。 用于 wifi远程连接
logcat 日志文件 分析命令
adb logcat -b radio --抓起特定模块的log 不加-b radio 默认抓起main的log
radio:输出通讯系统的log 例如:wifi,蓝牙之类
System:输出系统组件的log 例如:想要调用摄像头,麦克风之类的
Events:输出Event模块的log 事件模块,例如手指点击事件。
Main:所有java层的log(不属于上面3层的log)
logcat日志由五部分组成:
1.写下日志的时间,如:2019-05-11 15:50:15
2.优先级,在Android中,日志的优先级从低到高分以下几种
V-Verbose(啰嗦,最低级别,开发调试中的一些详细信息,仅在开发中使用,不可在发布产品中)
D-Debug(调试,用于调试的信息,可以在发布产品中关闭,比较常见)
I-Info(信息,一般提示性的消息)
W-Warnlng(警告)
E-Error(错误,已经出现可能影响运行的错误,比如应用crash时输出的日志)
3.标签(tag),标明日志发起者或者方便日志的过滤筛选,I/admin 中的admin
4.PID(进程ID),如 I/admin(491)
5.正文,本日志的主体内容
对于产生崩溃的程序,可以搜索崩溃的日志关键字:FATAL EXCEPTION
对于无响应的程序,通过查看前台应用activity名来确定ANR的位置,同时,通过发生ANR,将信息记录到一个路径:/data/anr/traces.txt中,traces只能保留最新一次的ANR
对于多次无响应的问题,可以到/data/system/dropbox中找ANR,同时可以通过ls -l 来查看日志创建时间
执行测试:
adb push C:\Users\Administrator\Desktop\monkeyScriptMain.txt /sdcard/
开始自动化测试
adb shell monkey -f /sdcard/monkeyScriptMain.txt -v -v -v 1 >D:log.txt
cmd与monkey测试的更多相关文章
- 安卓手机APP压力monkey测试
一.Monkey概述 Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中.它向系统发送伪随机的用户事件流(如按键输入.触摸屏输入.手势输入等),实现对正在开发的应用程序进行 ...
- Monkey测试4——Monkey命令行可用的全部选项
Monkey命令行可用的全部选项 常规 --help 列出简单的用法. -v 命令行的每一个-v将增加反馈信息的级别. Level 0(缺省值)除启动提示.测试完成和最终结果之外,提供较少信息. Le ...
- monkey测试
一.理解monkey测试 1.Monkey测试是Android自动化测试的一种手段.Monkey测试本身非常简单,就是模拟用户的按键输入,触摸屏输入,手势输入等,看设备多长时间会出异常. 2.当Mon ...
- 学习使用monkey 测试
一.Monkey测试简介Monkey测试是Android平台自动化测试的一种手段,通过Monkey程序模拟用户触摸屏幕.滑动Trackball.按键等操作来对设备上的程序进行压力测试,检测程序多久的时 ...
- monkey测试(转)
一.Monkey测试简介Monkey测试是Android平台自动化测试的一种手段,通过Monkey程序模拟用户触摸屏幕.滑动Trackball.按键等操作来对设备上的程序进行压力测试,检测程序多久的时 ...
- Android Monkey测试
Monkey测试1——Monkey的使用 原文地址: http://www.douban.com/note/257029872/ (转自豆瓣,版权属于豆瓣及豆瓣网友,如有冒犯请见谅并联系我们) Mon ...
- android之monkey测试
本文同时发表于本人个人网站 www.yaoxiaowen.com monkey测试算是android自动化测试当中最简单的一种工具了.虽然简单,不过对于测试app的稳定健壮,减少崩溃还是比较有用的.所 ...
- Monkey测试log的保存与分析
v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VM ...
- Android自动化之Monkey测试(二)
本文主要从以下方面进行分享. 一.查看应用包名二.Monkey启动三.Monkey停止四.Monkey命令五.日志分析 一.查看应用包名 大多数时候,我们都是对特定的应用进行monkey测试,因此需要 ...
随机推荐
- Java上机题(封装)(编写student类)
今天帮大一的童鞋写Java上机题 题目虽然很简单,但是刚拿到题目的时候愣了一下,然后就疯狂get set QuQ 其实这是一个特别基本的封装的题目(之前实验室面试大二的时候竟然还有蛮多人不知道封装的概 ...
- 抽丝剥茧分析asyncio事件调度的核心原理
先来看一下一个简单的例子 例1: async def foo(): print('enter foo ...') await bar() print('exit foo ...') async def ...
- 【PostgreSQL】 前缀模糊查询级优化
前匹配模糊 使用B-Tree来加速优化前匹配模糊查询 构造数据 新建一张商品表,插入一千万条数据. create table goods(id int, name varchar); insert i ...
- 源码解读·RT-Thread操作系统从开机到关机
本篇内容比较简单,但却很繁琐,篇幅也很长,毕竟是囊括了整个操作系统的生命周期.这篇文章的目的是作为后续设计多任务开发的铺垫,后续会单独再抽出一篇分析任务的相关知识.另外本篇文章以单核MCU为背景,并且 ...
- 并发编程-Future+callable+FutureTask 闭锁机制
项目中经常有些任务需要异步(提交到线程池中)去执行,而主线程往往需要知道异步执行产生的结果,这时我们要怎么做呢?用runnable是无法实现的,我们需要用callable实现. FutureTask ...
- 从同步原语看非阻塞同步以及Java中的应用
非阻塞同步:基于冲突检测的乐观并发策略,通俗讲就是先进行操作,如果没有其他线程争用共享数据,那操作就成功了,如果争用数据有冲突那就采用其他的补偿措施(最常见的就是不断重试直到成功),这种乐观的并发策略 ...
- HDU 6043:Colorful Tree(树上统计所有路径总颜色数)***
题目链接 题意 给出一棵有n个结点的树,每个结点有一个颜色,问在这棵树的所有路径中,每条路径的颜色数求和是多少. 思路 求每种颜色的贡献可以转化为总的和减去每种颜色在哪些路径上没有出现的贡献,一个颜色 ...
- 职业生涯之完成OCM考试后的感想
背景知识:关于OCM认证,百科是这样描述的: Oracle Certified Master(OCM) 大师认证资质是Oracle认证的最高级别.此认证是对技术.知识和操作技能的最高级别的认可.Ora ...
- kuangbin专题 专题一 简单搜索 非常可乐 HDU - 1495
题目链接:https://vjudge.net/problem/HDU-1495 题意:有两个空杯(分别是N升和M升)和一罐满的可乐S升,S = N + M,三个容器可以互相倾倒,如果A倒入B,只有两 ...
- python输出带颜色详解
书写格式: 开头部分:\033[显示方式;前景色;背景色m + 结尾部分:\033[0m 注意:开头部分的三个参数:显示方式,前景色,背景色是可选参数,可以只写其中的某一个:另外由于 ...