软件测试基础篇五App之adb命令
命令优势:效率高 面试会问 工具的本质也是调用命令 解决工具的能力边界
ADB可以用来安装卸载软件、管理安卓系统软件、启动测试、抓取操作日志等
一、常用命令
1、查看已连接的设备列表:adb devices
2、断开连接设备: adb disconnect 手机ip
3、无线连接设备: adb connect 手机ip(手机和电脑处于同一网段)
4、开启adb服务:adb start-server (45命令在老是设备离线或连接不上或者adb命令出现异常时候用,如果还没用数据线有问题或者长期没有关机了)
5、关闭adb服务:adb kill-server
6、获取手机日志: adb logcat > 本地文件(抓取日志以后重定向到某个文件,更容易查找)
adb logcat 不带路径查看日志 直接在窗口显示 不想看了 按 Ctrl+C 退出
'>' : 覆盖文件内容
'>>' : 追加在文件末尾
日志级别由高到低依次为:e w i d vdropbox目录下查找所有日志文件;FATAL Exception 表示crash 崩溃; ARN表示 :无响应
使用场景: 测试期间记录日志. adb logcat >本地文件
避免问题由于不确定复现步骤而导致无法复现,并且被研发拒绝.
二、安装卸载
1、安装软件包
adb install /路径/软件包文件名(-r 保留数据 -t 强制覆盖 )
例如: adb install -r -t /路径/软件包的文件名(当有软件包时可以使用-r-t)
2、卸载软件包
adb uninstall app的包名
如果卸载 app 但需要保留数据和缓存文件:adb uninstall -k (apk包名)
3、获取包名
获取手机里所有的包名: adb shell pm list packages
获取手机里所有的系统应用的包名: adb shell pm list packages -s
获取手机里所有第三方软件的包名: adb shell pm list packages -3
获取当前窗口(注意大小写区分)
Windows: adb shell dumpsys window | findstr mCurrentFocus
Mac/linux: adb shell dumpsys window | grep mCurrentFocus
4、清除缓存
adb shell pm clear 包名
三、性能命令
1、启动/停止应用
启动: adb shell am start 包名/activity名(包名是软件的标识,Activity主要描述app的某个页面)
停止: adb shell am force-stop 包名
2、获取启动时间
adb shell am start -W 包名/activity名
-W :获取时间
-S:启动前强行停止应用 (冷启动的时间)
-R 数字: 启动次数(可以求几次的平均值)
注意:参数均为大写,顺序可以调整,但-R后必须是数字
例如:adb shell am start -W -S -R 5 com.tpshop.malls/com.tpshop.malls.SplashActivity
3、获取内存信息
adb shell dumpsys meminfo 包名 (可以自己写工具,表展示)
4、获取CPU(建议用工具,循环执行)
adb shell dumpsys cpuinfo (查看当前CPU占用情况) 写程序使用它
adb shell top -s 9(代表CPU)或adb shell top -s cpu(有的识别不出来)
5、获取流量消耗值
1.获取userId : adb shell dumpsys package 包名 | findstr userId
2.获取上行: adb shell cat proc/uid_stat/userId/tcp_snd
3.获取下行:adb shell cat proc/uid_stat/userId/tcp_rcv
注意:cat后的路径是固定; userId中的’i"是大写; package后不加s
四、稳定性测试(Monkey)
1、adb shell monkey -p 包名 数字 -v >本地文件
注:-v -v -v :最高级别日志
常用命令:adb shell monkey -p 包名 10000 -v -v -v --throttle 500 > 本地文件
总结:
来自:黑马课程
软件测试基础篇五App之adb命令相关推荐
- LINUX学习基础篇(六)帮助命令
LINUX学习基础篇(六)帮助命令 帮助命令 man(Manual) info help - -help 帮助命令 man(Manual) 作用:查看联机帮助手册. 执行权限:所有用户. man命令的 ...
- Android手机app的adb命令测试电量
Android手机app电量测试 Android 5.0及以上的设备, 允许我们通过adb命令dump出电量使用统计信息 第一步:手机安装要测试的应用,打开手机开发者模式-USB模式,运行cmd.ex ...
- 软件测试- 基础篇 用例篇铺垫案例
文章目录 回顾上篇博客[软件测试 - 概念篇](https://blog.csdn.net/DarkAndGrey/article/details/125281778?spm=1001.2014.30 ...
- vue实战入门基础篇五:从零开始仿门户网站实例-关于我们实现
上一篇:vue实战入门基础篇四:从零开始仿门户网站实例-网站首页实现https://blog.csdn.net/m0_37631110/article/details/123045334 一.目录 第 ...
- [车联网安全自学篇] Android安全之ADB命令总结「收藏版」
也许每个人出生的时候都以为这世界都是为他一个人而存在的,当他发现自己错的时候,他便开始长大 少走了弯路,也就错过了风景,无论如何,感谢经历 0x01 常用的一些ADB命令 1.1 ADB 命令(主) ...
- 软件测试(二)——软件测试基础篇
软件测试的生命周期 软件测试的生命周期:需求分析→测试计划→ 测试设计.测试开发→ 测试执行→ 测试评估 软件测试&软件开发生命周期 需求阶段--测试人员了解需求.对需求进行分解, 得出测试需 ...
- 软件测试基础篇(1)
1)软件测试学什么? 2)软件测试能力: 3)生活中测试的案例:测试行为在生活中是处处可见的 刚买一部手机,我们需要测试他的功能是否完善,买一件衣服是否合身,一场考试做完后在检查做过的题 为什么企业要 ...
- 软件测试基础篇(3)
测试用例:围绕着软件需求文档来进行设计测试用例 测试用例:本质上是一种集合,是为了实施测试而向被测试系统发出的一组集合,实施测试集合,这个集合的操作者设计者就是测试人员,这组集合的内容包括:测试环境, ...
- 软件测试——基础篇(软件测试的生命周期和BUG的概念)
目录 一.软件测试生命周期 1. 软件生命周期 2. 软件测试生命周期 二.BUG 1. 如何描述一个BUG 2. BUG的级别 3. BUG的生命周期 一.软件测试生命周期 1. 软件生命周期 软件 ...
最新文章
- 消除左递归实验代码_「leetcode」108. 构造二叉搜索树【递归】【迭代】详解!
- JavaScript学习笔记:检测数组方法
- 信息学奥赛一本通C++语言——1049:晶晶赴约会
- python用牛顿迭代法求平方根_Python编程实现二分法和牛顿迭代法求平方根代码
- C#性能优化考虑的几个方向
- iOS基本UI元素示例教程
- Google 推出移动版任务管理工具 Google Tasks
- 【C语言数据结构】数组
- java 替换pdf 文本_java 查找替换pdf中的指定文本
- VS2015 Visual Assist X破解版安装、禁用、卸载方法
- stm32实现串口通信和LED灯点亮
- 如何实现镜像网站内容的同步
- kali内开启键盘背光
- 读Java核心技术36讲有感——谈谈对Java的理解,谈谈Exception和Error
- vue2.x的h函数(createElement)与vue3中的h函数
- android tv 菜单键,Android TV开发总结(三)构建一个TV app的焦点控制及遇到的坑
- 职业自我认知的测试软件,职业生涯规划自我认知测试.docx
- Linux下Netfilter创建自己的Hook,让数据包可以发送到用户层,然后统计节点负载信息
- java五位随机验证码的实现。要求前四位是随机大小写的字母,最后一位是数字的组合。例如qWrY4
- Vanilla Node.js REST API示例
热门文章
- Query DSL - Terms Query
- Es Bucket聚合(桶聚合) 第二篇-Terms Aggregation与Significant Terms Aggregation
- 都 2023 年了,你还在用 Kafka?快试试这个全新平台吧
- LiveView – 桌面全屏录屏软件 MP4格式录制
- Team Mate 抽屉原理
- 【CVPR】Calibrated RGB-D Salient Object Detection
- 为什么我们决定重构 Uber 司机端
- 计算机毕业论文net毕业设计家电维修保养信息系统net专业计算机毕业论文选题
- 数据库分区、分表、分片的区别
- 10 分钟搭建一个超好用的 CMDB 系统