用adb命令给APP做压力测试,有什么不同?

++压力测试++

++app++ 做压力测试目的是模拟用户在使用软件时随意向软件发出指令,例如操作app的点击,滑动,返回等一系列随机事件,来检测app的承受能力

第一步:++手机++ 安装包需要待测的app

第二步:输入adb start-server开启adb服务

第三步:输入adb devices测试手机连接是否正常

第四步:进入安卓系统,获取应用名

adb shell 进入安卓系统 exit退出

进入之后

Pm list packages 获取应用包名

第五步;获取第三方安装包名

Pm list packages -3

第六步:对app进行压力测试

monkey -p APP包名 次数

就是调用monkey命令对安卓APP进行压力测试。

例如:monkey -p com.tencent.mobileqq 100

即对包名为com.tencent.mobileqq的App发送100次随机事件的命令,发送完成后手机会自动运行该App并进行一系列随机操作。

第二种方法,运行需要获取的软件(获取活动栈和包名方法)

Cmd输入命令(运行获取的软件)

adb ++shell++ dumpsys window | findstr mCurrentFocus  

throttle参数:指定事件之间的间隔

adb抓取日志

第一步: 首先使用adb命令将手机与电脑连接

输入命令 adb devices

如下图证明连接成功

第二步: 抓取日志前先清除手机上的旧日志

输入命令 adb logcat -c 

第三步: 开始抓取日志(出现问题的日志)

输入命令 adb logcat -v time > E:\a.txt

同时开始操作出现问题APP的某个功能,方便++记录++日志,在操作完成后开始输入结束命令

结束抓取日志的命令:Ctrl C

命令解释:adb logcat -v time 开始抓取日志

E:\a.txt 存放的位置以及日志的命名  

第四步:结束需要抓取日志的命令(抓取的只是出现bug的部分,正常的部分不需要)

结束当前抓取日志的命令为:Ctrl C   

第五步日志分析:日志文件格式如下图:

各日志字母代表含义 V:明细、 D:调试、I:信息、W:警告 、E:错误、F:严重错误、S:无记载  

定位有问题的日志方法

在文件中找到保存的日志文件,在编辑功能中找到搜索功能按键,在搜索功能中输入关键字:可以根据现象来搜索关键字

  1 例如:打开软件出现崩溃现象,就是严重错误,搜索关键字 fatal

  2 例如:打开软件该出现内容没有显示,就是错误,搜索关键字error

  3 在抓取的日志中基本搜索关键字error,将出现的日志截图即刻

adb命令

adb组成:

1 adb服务器、2 adb客户端、3 adb后台程序,守护程序  

adb命令:

1 打开adb服务 adb start-server

2 关闭adb服务 adb kill-server

3 查询已经连接的设备 adb devices

第一个是手机的序列号

第二个表示状态 device 已经连接

Offine 断开连接

Unauthorization 已经连接成功但是手机不信任此电脑

4 进入安卓系统 adb shell

5 退出安卓系统 exit 

6 获取手机上有多少个应用名(报名)

adb shell pm list packages

进入系统内 pm list packages

7 获取手机上所有第三方安装包名

adb shell pm list packages -3 

8 获取手机上某个应用的activity(中文名:活动栈)

adb shell monkey -p 软件包名 -v -v -v 10 | grep "cmp="

手机连接改为把grep findstr

.activity.SplashActivity 为活动名

第二种方法,运行需要获取的软件

Cmd输入命令

adb shell dumpsys window | findstr mCurrentFocus

9 查看手机日志 adb logcat(退出adb查看)

-c 清除日志

将日志添加到文件中 adb logcat >> a.txt

看看路径,在文件夹中查找就可以看到

10 将电脑上的文件发送到手机上

Adb push 电脑上的文件名位置 手机存放位置

11 将电脑上的文件发送到手机

和10 方法一样

相关推荐
Waay7 小时前
面试口述版:个人对 Prometheus 完整理解
运维·学习·云原生·面试·职场和发展·kubernetes·prometheus
yuhaiqiang8 小时前
随手 vibecoding 的浏览器插件已经 6000 多次下载,聊聊他的产品设计
前端·后端·面试
黄敬峰11 小时前
🚀 从 Prompt 到 Harness:AI 编程的下半场,我们如何给大模型套上“挽具”?
面试
用户8524950718411 小时前
手搓自然语义搜索:从传统匹配到向量化,理解 RAG 的第一步
面试
搬砖柯12 小时前
系列10-接口/UI 自动化怎么验落库?数据工厂与数据库断言实践
数据库·测试工具·ui·开源·自动化
C语言小火车12 小时前
C++ 快速排序(Quick Sort)深度精讲:分治思想、Lomuto 分区法及三数取中优化,面试手撕必会
c语言·开发语言·c++·面试·排序算法·快速排序
LT101579744413 小时前
2026年在线兼容性测试工具推荐|零部署网页 / APP / 小程序实测对比
测试工具·小程序
水木流年追梦17 小时前
agent面试必备31- AI Agent 核心进阶:工具路由(Tool Routing)
数据库·人工智能·oracle·面试·职场和发展·embedding
林希_Rachel_傻希希18 小时前
web性能优化之延迟加载图片和<inframe>
前端·javascript·面试
帅次18 小时前
Android 高级工程师面试:Java 多线程与并发 近1年高频追问 22 题
android·java·面试