adb

adb下载

下载完是一个zip格式,解压到某一个目录就可以

配置环境变量
找到存放adb的位置,复制路径

然后到环境变量的位置
右键此电脑-属性-高级系统设置-环境变量
在系统变量中找到Path,然后把刚才复制的路径粘过去,点击确定,保存

然后打开cmd,adb version看看如果出了版本号,就说明装成功了

adb命令
1、连接手机:adb devices

2、进入Android设备:adb shell

当电脑上连接设备不止一台时(只有一台模拟器一台手机),指定设备:adb -e shell / adb -d shell
-e:连接到当前电脑上已经连接的唯一的一台模拟器
-d:连接到当前电脑上已经连接的唯一的一台真机

当电脑上连接设备不止一台时(有多台模拟器多台手机),指定设备:adb -s MYQUT19C06021644 shell

进入到Android系统后,里面的命令就和linux一样了

也可以这样
把adb shell 当成一个管道,把ls传到Android中执行,执行完之后把结果再通过管道给返回来

这两种其实是不一样的,一个在android系统里边,一个在Windows系统里边

3、列出来当前系统里安装了哪些应用:adb shell pm list package

-s:列出系统的包名,adb shell pm list package -s
-3:测试中接触的大多都是第三方的,后来装上去的,直接-3就可以,adb shell pm list package -3

从一堆包名中过滤出我想要的:mac和Linux用grep,Windows里用findstr

或者后面直接跟关键字,也可以过滤出来

4、想给系统里安装软件:adb install 安装包存放路径
安装成功下面会有Success。

如果应用已经存在,再次安装,会报错,显示应用已存在

想让应用直接覆盖,需要-r,adb install -r 安装包存放路径

假设手机安装的apk是高版本,想要安装一个低版本的apk,需要-d -r,adb install -d -r 安装包存放路径

5、卸载手机里的软件:adb uninstall 包名

-k:adb卸载的时候默认删除数据,加了-k后会保存数据,adb uninstall -k 包名

6、文件的上传与下载,电脑上的文件上传到Android,android中的文件下载到本地
上传:adb push 文件名(文件路径) android上的存放路径

下载:adb pull 要下载文件的存放路径 .(最后这个点代表保存到当前目录下)

7、截屏:adb shell screencap -p 文件名(存放路径+文件名)
回车后没有报错就是截屏成功

录屏:adb shell screenrecord 文件名(文件管理器的根目录,存放路径+文件名)
Ctrl+C是停止

8、查看日志:adb logcat(展示从开机以来到现在的所有日志,日志缓冲区的日志全打出来)

日志级别

  • I:Information
  • D:Debug
  • W:warn
  • E:Error

清空之前的日志:adb logcat -c
把之前日志清空之后再抓日志就没有输出了,这时再操作,抓出的日志就是当前操作的所有日志了

把logcat的内容保存下来:adb logcat > logcat.log(把日志内容重定向保存到logcat文件里)

过滤日志
只打出警告的日志:adb logcat *:W
如果设置低等级的,那么高等级的日志也会打出来。设置的是warn,那么warn及以上等级的都会被打出来


adb shell 后面是$符号的没有root权限,可能有些命令无法使用,需要root权限(#符号)才可以
查内核日志:adb shell dmesg(linux的内核日志,系统最底层的日志,一般也不看)

9、查看当前设备的电量:adb shell dumpys battery

monkey

monkey:安卓系统自带的,用来测试系统或应用的稳定性。
monkey是安卓系统自带的命令,想查看需要root权限,否则是看不到的

用中括号括起来的一般是可选参数,没括起来的是必选参数
COUNT是次数的意思,至少要告诉monkey想跑多少次测试

1、对系统做测试:adb shell monkey 50(count是可变的)

2、对应用做测试:adb shell -p 指定要测试应用的包名 count(不管前面加多少个参数,count一定是放在最后的,实际应用中一万次起步)
后台会自动调起应用

-v:查看对应的日志(想要看几级日志,就加几个-v,一个一级,两个两级,三个三级…)

保存日志也是重定向就可以

伪随机
用monkey跑应用如果真的出现了bug,测试人员需要复现bug。
monkey里每一次执行都是随机的事件,既然是随机的那要怎么复现?
把日志开到最高级别后,日志里面会有一个seed。如果后面再跑的时候指定了seed,那么两次执行的顺序、节奏、动作将会一样。

指定seed:-s seed
我保存了monkey的seed,然后不指定seed执行一遍,命名为monkey1,再指定seed执行一遍,命名为monkey2。那么monkey和monkey2的seed,应该是相同的,而monkey1是不同的seed


monkey和monkey2的执行顺序也是完全一致的

加延迟:–throttle time(500是毫秒,这个时间是以毫秒为单位的,是指每一次动作之间的延迟)

当应用遇到无响应、延迟、安全异常等,还接着测:–ignore-crashes、–ignore-timeouts、–ignore-security-exceptions

指定事件的百分比
触摸:–pct-touch PERCENT
拖动,滑动:–pct-motion PERCENT
轨迹球(上下左右,方向):–pct-trackball PERCENT
系统的key:–pct-syskeys PERCENT
导航:–pct-nav PERCENT
应用跳转:–pct-appswitch PERCENT

日志报错

可以直接搜关键字给开发(ANR,crash,exception)

Android移动端测试——adb、monkey相关推荐

  1. 移动端测试——adb命令

    adb命令 adb (Android Debug Bridge)是 Android SDK 的一个工具,可以通过它来操作Android 设备,是Android App 客户端测试必备的工具. 具有安装 ...

  2. 移动端测试=== adb 无线连接手机

    无线连接(需要借助 USB 线) 除了可以通过 USB 连接设备与电脑来使用 adb,也可以通过无线连接--虽然连接过程中也有需要使用 USB 的步骤,但是连接成功之后你的设备就可以在一定范围内摆脱 ...

  3. 移动端测试===adb shell top命令解释

    adb shell top top命令提供了实时的对系统处理器的状态监视.它将显示系统中CPU最"敏感"的任务列表.该命令可以按CPU使用.内存使用和执行时间对任务进行排序. to ...

  4. 移动端测试-adb命令

    安卓sdk配置 我这里将androidsdk下载解压到了d:\tools.解压完成后,需要 配置一下 添加一个 环境变量 ANDROID_HOME ,设置值为sdk包解压目录,比如 d:\tools\ ...

  5. Android App压力测试(Monkey和ADB)

    压力测试简介 压力测试是一种基本的质量保证行为,它是每个重要软件测试工作的一部分.压力测试的基本思路很简单:不是在常规条件下运行手动或自动测试,而是在计算机数量较少或系统资源匮乏的条件下运行测试.通常 ...

  6. Android 系统(212)---monkey实战–测试步骤、常用参数、常规monkey命令

    monkey实战–测试步骤.常用参数.常规monkey命令 [转]monkey实战–测试步骤.常用参数.常规monkey命令 ***(本文转自:https://blog.csdn.net/u01164 ...

  7. android服务器压力测试,Android压力测试Monkey工具

    最近在Android程序测试过程中接触到了自动化测试方法,对其中的一些工具.方法和框架做了一些简单的整理,其中包括android测试框架.CTS.Monkey.Monkeyrunner其它test t ...

  8. 1.移动端测试知识笔记(面试必备,测试点,adb命令)

    移动端测试: 移动应用,特性(功能) 满足 需求(产品文档,隐性需求) 一.App功能测试: 死活背下来 1.业务逻辑正确性测试: 产品文档,隐性需求- 写成测试用例 2.兼容性测试:    1.系统 ...

  9. android 获取monkey日志_Android压力测试:monkey压力测试实战

    主要分享的主题是 Android App 专项测试, 通过 monkey 进行压力测试. 一.测试步骤 1.安装ADB 2.连接被测手机和电脑 3.打开CMD命令行 4.输入monkey命令 adb ...

最新文章

  1. java action dao_java中Action层、Service层和Dao层的功能区分
  2. Nat. Mach. Intel. | IBM RXN: 深度学习在化学反应分类上大放异彩
  3. 用再生龙Clonezilla 来克隆Linux
  4. 独角兽公司 Sprinklr 获 1.05 亿美元 F 轮融资,估值 18 亿美元
  5. python语句x 3 3执行_Python语言中,x=2,y=3,执行x,y=y,x之后,x和y的值分别是什么?...
  6. /etc/fstab文件分析(第二版)
  7. python图层合并_Ps算法Python实现:图层混合模式-色相
  8. editplus来编写SQL
  9. 论文写作思路_2018年的16个写作思路
  10. VBA InStr 函数
  11. 主板开启网络唤醒_网络唤醒bios详细设置图文教程 | 专业网吧维护
  12. Origin软件绘制柱形图
  13. 圆弧周长公式_求圆弧长度计算公式
  14. 辉光管时钟系列<三>时钟芯片DS12C887
  15. MeteoInfo 生成等值面
  16. IT 最高,2018 年全国平均年薪!非私企 147,678¥
  17. Ford-Fulkerson方法
  18. 矿大计算机 学硕专硕,【20考研】超详细对比,学硕专硕如何选,不懂的学弟学妹快进来看...
  19. 我家的三个犹太小富豪
  20. 矩阵分析L1 线性空间基础

热门文章

  1. windows下安装HTK3.4
  2. 智慧工厂平台整体结局方案
  3. FastDFS(提升磁盘IO性能的几个技巧 FastDFS 5.04之IO读事件)
  4. 6点叫醒全员的腾讯是枕戈待旦,还是如李彦宏说的“新瓶装旧酒”
  5. Openstack基础架构和各组件的关系
  6. 一步步实现SDDC-vRNI加速实现安全微分段
  7. Spring Boot学习总结(26)—— Spring Boot 容器启动详解
  8. Java设计模式学习总结(11)——结构型模式之装饰器模式
  9. Java基础学习总结(46)——JAVA注解快速入门
  10. ajax提示弹出dev,windows git pull或者push代码时弹出安全框解决办法