Androd adb命令汇总,app专项测试命令。

news2024/11/17 1:32:35

在这里插入图片描述
1.普通命令
在这里插入图片描述

1.1 devices命令

# 语法格式 :adb devices [-l] 
# 作用 :返回已连接设备的信息
# 示例 :
    adb devices     : 返回设备的信息
    adb devices -l  : 返回设备的详细信息

1.2 help命令

# 语法格式 :adb --help
# 作用 : 查看adb命令的帮助信息
# 示例 : adb --help       : 返回adb命令的帮助信息

1.3 version命令

# 语法格式 :adb version 
# 作用 :查看adb命令的版本信息
# 示例 :
    adb version     : 返回设备的版本信息
   

在这里插入图片描述
2.网络命令

2.1 connect命令

# 语法格式 :adb connect host[:port] 
# 作用 :连接到一个设备上
# 示例 :
    adb connect 127.0.0.1:21503     : 连接电脑上的模拟器

在这里插入图片描述
2.2 disconnect命令

# 语法格式 :adb disconnect host[:port] 
# 作用 :断开设备的连接
# 示例 :
    adb disconnect 127.0.0.1:21503      : 与模拟器断开连接

在这里插入图片描述
3.文件传输

3.1 push命令


# 语法格式 :adb push 本地文件 手机的路径 
# 作用 :将电脑端的文件推到到手机上
# 示例 :
    adb push abcd.log /data/test        : 将本地文件abcd.log推送到手机的/data/test目录下

在这里插入图片描述
3.2 pull命令

# 语法格式 :adb pull 手机文件 本地路径
# 作用 :将手机文件拉倒本地
# 示例 :
    adb pull /data/test/monkey.log .        : 将手机路径下/data/test/monkey.log拷贝到电脑端的当前路径下

在这里插入图片描述
4.shell脚本

安卓系统是基于Linux系统开发,也就支持常见的Linux的命令,若在window客户端下执行时需要用adb shell 命令 。或者是先输入adb shell 。进入shell程序后,然后执行下面的命令 。

4.1 普通命令

普通命令是指在shell执行的命令和Linux下的命令是一样的 ,比如:ls , cp ,cd ,touch ,mkdir等命令在adb shell下都可以执行。

4.2 screencap 命令

# 截图当前手机屏幕
adb shell screencap -p 路径/png图片

4.3 monkey命令

作用:主要用于Android上的应用进行压力测试或稳定性测试的一个工具, 主要目的是测试app在长时间压力下是否产生Crash(崩溃)或无响应.

语法格式 : monkey [基本参数] [事件参数] [调试参数]

基本参数

在这里插入图片描述

### 以下命令是指定基本操作的情况
​
​
# 1.发送200个随机指令 (不带任何参数)
abd shell monkey 200
# 2.指定具体包名,并指定比较详细的日志 ,运行200次 :
abd shell monkey -p com.lchr.diaoyu -v -v 200
# 3.每个事件结束后,用于设置间隔时间,用于降低系统压力 。
adb shell monkey -p com.lchr.diaoyu --throttle 500 200 #每个指令之间延时500毫秒 。
# 4.设置种子值,以预备后续重复执行相同指令 。
adb shell monkey -p com.lchr.diaoyu -s 1001 200 # 设置种子值1001,随便指定即可,主要用于回归测试。

事件参数

在这里插入图片描述

# 设置各事件运行的比率,总比率之和需等于100
adb shell monkey -p com.lchr.diaoyu --pct-touch 50 --pct-motion 10 --pct-majornav 20 --pct-syskeys 10 --pct-anyevent 10 -s 15 --throttle 500 -v -v -v 500 

调试参数
在这里插入图片描述

# 设置各事件运行的比率,同时忽略应用程序崩溃和无影响导致的停止。
adb shell monkey -p com.lchr.diaoyu --pct-touch 50 --pct-motion 10 --pct-majornav 20 --pct-syskeys 10 --pct-anyevent 10 -s 15 --throttle 500 -v -v -v --ignore-crashes --ignore-timeouts 50000 > monkey.log 

4.4 pm命令

# 语法格式 :
    pm list packages [-f] [-d] [-e] [-s] [-3] [-i] [-u] [--user USER_ID] [FILTER]
    pm install [-lrtsfd] [-i PACKAGE] [PATH]
    pm uninstall [-k] [--user USER_ID] PACKAGE
    pm clear [--user USER_ID] PACKAGE
# 作用 :包管理应用程序
# 示例 
    pm install /data/test/diaoyu_3.5.20_wap_release1.apk        # 安装apk应用程序
    pm list packages -3     # 显示所有第三方应用程序
    pm uninstall com.lchr.diaoyu

在这里插入图片描述
list packages 参数
在这里插入图片描述
install 安装参数
在这里插入图片描述
uninstall 参数
在这里插入图片描述
5.apk安装

5.1 install命令

# 语法格式 :adb install apk安装包
# 作用 :将电脑端的apk安装包安装到移动设备上
# 示例 :
    adb install diaoyu_3.5.20_wap_release1.apk
# 说明 : 此安装命令和pm里的安装基本一样 。 adb install = push apk安装包 + pm install apk安装包 

5.2 install-multiple命令

# 语法格式 :adb install apk安装包
# 作用 :将电脑端的apk安装包安装到移动设备上
# 示例 :
    adb install-multiple BaiduTranslate_webbannerfinal.apk diaoyu_3.5.20_wap_release1.apk   # 同时安装两个包

5.4 uninstall命令

# 语法格式 :adb uninstall [-k] 包名
# 作用 :将移动端的app卸载掉 ,其中-k 代表保留app的数据和缓存
# 示例 :
    adb uninstall com.lchr.diaoyu
# 说明 : 此卸载命令和pm里的安装基本一样 。 adb uninstall 应用包名 = pm uninstall 应用包名

6.内部调试

6.1 bugreport命令

# 语法格式 :adb bugreport [-k] 包名
# 作用 :输入指令后开始抓取移动端上的日志,不需要按Ctrl+C来停止,会自动化停止Log打印,并将日志文件保存在本地。抓取日志的步骤:主要抓取执行命令时往前10分钟左右的日志信息,所以在出现bug后立即采用此方法才有效,问题出现时间太长不建议使用此方法。此命令运行Android7.0以上的系统上。
# 示例 :
    adb bugreport .         # 将日志输出到本地的当前路径下

在这里插入图片描述
6.2 logcat命令

作用 :抓取移动设备上的日志 。
格式 : adb logcat [选项] [过滤器设置]
选项说明 :
-s : 设置默认过滤器日志为silent
-f 日志文件 : 输出日志到具体的文件中
-n : 设置最大日志行数
-v :设置日志输出格式 ,只能设置一项。
-c : 清空所有的日志缓存信息
-d : 将缓存的日志输出到屏幕上, 并且不会阻塞;
-t : 输出最近的几行日志, 输出完退出, 不阻塞;
-t : 输出最近时间的几行日志,输出完退出 。
-T : 输出最近的几行日志 ,输出完不退出
-T : 输出最近时间的几行日志,输出完不退出
-g : 查看日志缓冲区信息

过滤器设置
设置的格式为 : [:日志级别] ,其中tag一般为* .
根据以上的格式,可以设置的日志为 : *.D ,代表输出debug以及以上的日志 。
并且以下的日志级别是由低到高 。
V — 明细 verbose(最低优先级)
D — 调试 debug
I — 信息 info
W — 警告 warn
E — 错误 error
F — 严重错误 fatal
S — 无记载 silent

# 格式 :adb logcat [**选项**] [过滤器设置]  
​
# 说明 :根据以上日志格式可以看出 ,可以有如下组合 。
​
# 1. 不加任何选项和过滤器
adb logcat      # 查看所有的日志信息 
​
​
# 2. 只加上选项
adb logcat -c       # 清空所有日志
adb logcat -t 10    # 输出最近10行的日志
adb logcat -v time  # 日志加上时间
adb logcat -v time -f /data/test/a.log      # 将有时间的日志输出到文件 。
adb logcat -s WifiStateMachine              # 输出tag为WifiStateMachine的日志,相当于筛选的关键字
​
# 3. 只加上过滤器
adb logcat *:I      #输出大于等于I级别的日志
adb logcat end:W    # 输出end标签以及W及以上级别日志
​
# 4. 选项和过滤器都包含的情况
adb logcat -v time *:W          # 输出日期格式并且为W级别以及以上的日志
​
​
# 5. 也可以加上findstr进行字符过滤 ,需要注意的是在windows下运行为findstr,在手机端运行为grep
adb logcat | findstr 过滤符
adb logcat | findstr com.motk

7.脚本及调试

7.1 start-server命令

# 语法格式 :adb start-server 
# 作用 :启动adb服务,因为和真机连接时间长时,有可能出现异常,通过此命令可以重启此服务
# 示例 :
    adb start-server

7.2 kill-server命令

# 语法格式 :adb kill-server
# 作用 :停止adb服务
# 示例 :
    adb kill-server

7.3 get-state命令

# 语法格式 :adb get-state
# 作用 :查看adb服务
# 示例 :
    adb get-state       

在这里插入图片描述
7.4 get-devpath命令

# 语法格式 :adb get-devpath
# 作用 :获取设备路径
# 示例 :
    adb get-devpath     # 获取设备路径

7.5 remount命令

# 语法格式 :adb remount
# 作用 :重新挂载文件系统 ,一般运行此命令前需要先运行adb root
# 示例 :
    adb remount

7.6 root命令

# 语法格式 :adb root
# 作用 :以root权限重启adbd守护进程
# 示例 :
    adb root

7.7 usb命令

# 语法格式 :adb usb
# 作用 :通过usb重启adbd监听
# 示例 :
    adb usb

7.8 tcpip命令

# 语法格式 :adb tcpip port
# 作用 :通过TCP重启adbd监听
# 示例 :
    adb uninstall com.lchr.diaoyu

在这里插入图片描述

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1812495.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

攻防世界--杂项misc-2017_Dating_in_Singapore

题目信息 题目描述和附件分别是一串数字和新加坡日历,数字中间有短线-连接,刚好分成了12个字段。猜想对应了12个月 01081522291516170310172431-050607132027262728-0102030209162330-02091623020310090910172423-02010814222930-0605041118252627-020…

集合进阶(接口Collection(迭代器、增强for、Lambda表达式)、List中常见的方法和五种遍历方式、数据结构(栈、队列、数组、链表)

一、单列集合顶层Collection List系列集合:添加的元素是有序、可重复、有索引Set系列集合:添加的元素是无序、不重复、无索引 Collection是单列集合的祖宗接口,它的功能是全部单列集合都可以继承使用的。 Collection的遍历方式 1、迭代器——…

catia零件装配中通过指南针移动零件

1 将零件导入进来后 2 把指南针移动到零件上 具体移动哪个可以通过模型树点击选中,选中那个就可以移动那个。 这种情况需要注意的是 需要双击选择要移动零件的父节点 如下图,Product2蓝色表示是激活的,这样才可以单击选中下面的零件后通过…

STM32F103RCT6换STM32F103C8T6后delay函数延时了10倍

更换单片机步骤: 1、型号选择 2、启动文件,将HD改为MD。 3、引入对应的启动文件。 4、后面发现delay比之前延时了差不多10倍,解决办法:在初始化后加入SystemInit();即可。

Frontiers旗下期刊,23年分区表整理出炉!它还值得投吗?

本周投稿推荐 SSCI • 中科院2区,6.0-7.0(录用友好) EI • 各领域沾边均可(2天录用) CNKI • 7天录用-检索(急录友好) SCI&EI • 4区生物医学类,0.5-1.0(录用…

第十五届蓝桥杯pb组国赛E题[马与象] (15分)BFS算法 详解

博客主页:誓则盟约 系列专栏:IT竞赛 专栏 关注博主,后期持续更新系列文章 如果有错误感谢请大家批评指出,及时修改 感谢大家点赞👍收藏⭐评论✍ 问题描述: 小蓝有一个大小为 N N 的棋盘(棋…

110.网络游戏逆向分析与漏洞攻防-装备系统数据分析-装备与技能描述信息的处理

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 如果看不懂、不知道现在做的什么,那就跟着做完看效果,代码看不懂是正常的,只要会抄就行,抄着抄着就能懂了 内容…

javaWeb项目-ssm+vue医院住院信息管理系统功能介绍

项目关键技术 开发工具:IDEA 、Eclipse 编程语言: Java 数据库: MySQL5.7 框架:ssm、Springboot 前端:Vue、ElementUI 关键技术:springboot、SSM、vue、MYSQL、MAVEN 数据库工具:Navicat、SQLyog 1、Java简介 现代社…

Nvidia/算能 +FPGA+AI大算力边缘计算盒子:AI智能监控 用于沙滩救援

以色列的一个团队在人工智能领域取得的成果引起了轰动。 今天他们取得的成果源于多年前的一个想法。Netanel Eliav 和 Adam Bismut 是校园时代的旧伙伴,当时他们想要解决一个可以改变世界的问题,由此引出这样一个想法:溺水的 Bismut 漂流到死…

RV32M指令集

RV32M指令集 1、乘法运算2、除法运算1、乘法运算 MUL 指令(得到整数32位乘积(64位中的低32位)) MUL 指令用于执行两个带符号或无符号整数之间的乘法运算。其语法如下: mul rd, rs1, rs2 它将寄存器 rs1 和 rs2 中的值相乘,并将结果写入寄存器 rd 中。如果 rs1 和 rs2 都是有…

catia零件装配时预览零件的形状

这样的显示方式看不到 选择大或中图标就可预览零件形状

基于STM32的智能水产养殖系统(二)

TPS5433IDR TPS5433IDR 是一款由德州仪器 (Texas Instruments) 生产的高效降压转换器(Buck Converter)。它能够将较高的输入电压转换为较低的输出电压,适用于各种电源管理应用。 主要特性 输入电压范围: 5.5V 至 36V输出电压范围: 0.9V 至 …

惊艳的短视频:成都科成博通文化传媒公司

惊艳的短视频:瞬间之美,震撼心灵 在数字化时代,短视频以其短小精悍、内容丰富的特点,迅速占领了我们的屏幕和时间。而在这个浩如烟海的视频海洋中,总有一些短视频能够脱颖而出,以其惊艳的视觉效果、深刻的…

设计模式-代理模式(结构型)

代理模式 代理模式是一种结构型模式,它可以通过一个类代理另一个类的功能。代理类持有被代理类的引用地址,负责将请求转发给代理类,并且可以在转发前后做一些处理 图解 角色 抽象主题(Subject): 定义代理对象和被代理…

足球实况分析系统YOLO

① 足球运动员、裁判和球检测; ② 球员球队预测; ③ 足球地图上球员和球位置的估计; ④ 足球跟踪; 当你启动应用程序时,会自动加载两个演示视频以及推荐的设置和超参数. 1. 使用侧栏菜单“浏览文件”按钮上传视频…

什么是OCR转写服务?

OCR(Optical Character Recognition,光学字符识别)转写服务是一种技术,用于将图像或扫描文档中的文字转换为可编辑的文本格式。这项服务通过识别图像中的文字,并将其转换成计算机可读的文本形式,从而使得用…

力扣39. 组合总和

Problem: 39. 组合总和 文章目录 题目描述思路及解题方法复杂度Code 题目描述 思路及解题方法 1.创建一个 res 变量存储所有满足条件的组合结果,使用 track 变量记录当前的组合路径,使用 trackSum 变量记录当前路径中元素的和。 2.回溯方法 backtrack: 2.1.基本情况…

【技巧】让xorg和gnome不要使用GPU

转载请注明出处:小锋学长生活大爆炸[xfxuezhagn.cn] 如果本文帮助到了你,欢迎[点赞、收藏、关注]哦~ 默认xorg会使用GPU加速: 现在取消他对GPU的占用: sudo vim /etc/X11/xorg.conf修改或添加以下内容: Section &quo…

9个优秀的Text2Sql(Chat2Sql)开源项目、资源

过去,领导、决策者或业务人员想要统计个数据、做个报告,总是绕不开技术人员的支持。领导需要将想法告诉技术人员,技术人员再将领导的想法转成技术语言(例如:sql),然后对数据进行统计分析&#x…

electron基础使用

安装以及运行 当前node版本18,按照官网提供操作,npm init进行初始化操作,将index.js修改为main.js,执行npm install --save-dev electron。(这里我挂梯子下载成功了。),添加如下代码至package.…