作为测试人员,不能不懂的adb命令和操作
运行设备的shell(命令行)
管理模拟器或设备的端口映射
计算机和设备之间上传/下载文件
将本地apk软件安装至模拟器或android设备
ADB是一个客户端-服务器端 程序, 其中客户端是你用来操作的电脑, 服务器端是android设备。而ADB驱动就是电脑与android设备的通信的客户端驱动程序。
adb有三大部分组件:
客户端(client)
运行在你自己的电脑上,可以通过shell来调起一个客户端
服务器(server)
运行在电脑的后台,负责管理client和damon进行通信
守护进程(damon)
-d | 指定当前唯一通过 USB 连接的 Android 设备为命令目标 |
-e | 指定当前唯一运行的模拟器为命令目标 |
-s <serialNumber> |
指定相应 serialNumber 号的设备/模拟器为命令目标 |
在多个设备/模拟器连接的情况下较常用的是 -s 参数,serialNumber 可以通过 adb devices 命令获取
如:
adb -s cf264b8f shell wm size 获取手机屏幕尺寸
作为测试需要掌握的adb命令:
1.adb shell 进入adb shell模式
2.adb pull <手机路径> <电脑路径> 把手机中文件拉去到电脑中 手机路径可以用ls/cd等来找到3
1.adb install +包名 adb安装apk (覆盖安装是使用 -r 选项)
adb 命令是 adb 这个程序自带的一些命令,而 adb shell 则是调用的 Android 系统中的命令,这些 Android 特有的命令都放在了 Android 设备的 system/bin 目录下
8.1. adb shell bugreport , 打印dumpsys、dumpstate、logcat的输出,也是用于分析错误
输出比较多,建议重定向到一个文件中
adb shell dumpsys > d:\bugreport.log
8.2 pm
Package Manager , 可以用获取到一些安装在 Android 设备上得应用信息
8.2.1 adb shell pm list package 列出所有的应用的包名 (-s:列出系统应用 -3:列出第三方应用 -f:列出应用包名及对应的apk名及存放位置 -i:列出应用包名及其安装来源)
8.2.2 adb shell pm path+包名 列出对应包名.apk 位置
8.2.3 adb shell pm install +apk存放路径 安装应用(目标 apk 存放于PC端,用 adb install 安装 目标 apk 存放于Android设备上,用 pm install 安装)
8.3 am
8.3.1 adb shell am start +包名/.Activity (要启动的Activity) 启动一个 Activity (-s先停止目标应用,再启动 -w 等待应用完成启动 -a 启动默认浏览器打开一个网页例:adb shell am start -a android.intent.action.VIEW -d http://testerhome.com)
8.3.2 adb shell am monitor 监控 crash 与 ANR
8.3.3 adb shell am force-stop 后跟包名,结束应用
8.3.4 adb shell am startservice 启动一个服务
8.3.5 adb shell am broadcast 发送一个广播
8.4 input
这个命令可以向 Android 设备发送按键事件
8.4.1 adb shell input text +具体内容 发送文本内容,不能发送中文
8.4.2 adb shell input keyevent + 按键事件 发送按键事件 例如:adb shell input keyevent KEYCODE_HOME 模拟按下Home键
8.4.3 adb shell input tap +触摸事件的位置 , 对屏幕发送一个触摸事件 例如:点击屏幕上坐标为 500 500 的位置(adb shell input tap 500 500)
8.4.4 adb shell input tap , 对屏幕发送一个触摸事件
8.4.4 adb shell input swipe 滑动事件 例如:从右往左滑动屏幕
adb shell input swipe 800 600 100 600
8.5 screencap
截图命令
adb shell screencap -p /sdcard/DCIM/screenTest.png
8.6 screenrecord
4.4以上系统版本新增的录制命令
adb shell screenrecord /sdcard/demo.mp4
执行命令后操作手机,ctrl + c 结束录制,录制结果保存至 sdcard/ 下
8.7 ime
列出设备上的输入法
adb shell ime list -s
另一种不需要数据线链接手机的adb方式:
通过WiFi进行远程调试,此时我们就可以不需要通过USB线将手机连接到电脑了,但是有如下注意事项:
1、确保手机和电脑处于同一网络中(连接的同一个路由器)
2、提前通过adb tcpip 5555来确定通讯的端口号
3、再通过adb connect 加上你自己手机的ip地址来进行连接
如果想要取消连接,直接使用adb disconnect命令即可
启动 adb server 命令:
adb命令
有些手机需要解锁system分区(如小米)
输入:adb root
输入:adb disable-verity
查看手机连接状态:adb device
获得root权限:root
设置超级用户模式 : su
退出su : exit
重启命令:adb reboot
重启到Rec:adb reboot recovery
重启到Fastboot:adb reboot bootloader
推送ROM包:adb sideload <Rom包>
把文件从手机中复制到电脑上 : adb pull <手机路径> <电脑路径>
把文件从电脑复制到手机上 : adb push <电脑路径> <手机路径>
重新挂载文件系统 : adb remount
安装软件 : adb install apk文件名称.apk
卸载apk软件 : adb uninstall apk包名.apk
Fastboot命令:
查看连接状态 :fastboot devices
重启 :fastboot reboot
重启到Fastboot :fastboot reboot-bootloader
除非你很了解该命令,否则以下命令请谨慎使用:
解锁 :fastboot flashing unlock或fastboot oem unlock
上锁 :fastboot flashing lock或fastboot oem lock
清除分区数据 :fastboot erase <boot/system/data/cache/userdata/recovery>
清除分区(四清) :fastboot erase system -w
格式化分区数据 :fastboot format <boot/system/data/cache/userdata/recovery>
烧写分区 :fastboot flash < boot/system /recovery/radio/bootloader/ splash1/>
作为测试人员,不能不懂的adb命令和操作的更多相关文章
- 测试人员必备之 mysql 常用命令学习指南
1.数据库连接 1.通过命令行连接数据库 [root@localhost ~]# mysql -u root -p Enter password: 输入以上命令,回车后输入密码,回车,出现 mysql ...
- 为什么测试人员必须掌握Linux?
相信点进来的小伙伴不是对Linux感兴趣就是对测试感兴趣了,也希望本文可以帮助之前接触过Linux的小伙伴找到继续坚持学习下去的动力,之前没接触过Linux的小伙伴也能找到开始学习Linux的兴趣. ...
- 08- adb常用命令以及模拟器链接adb命令
adb 命令简介 ADB即 Android debug bridge.是Android下面一个通用的调试工具. 熟练使用adb命令会大大增加开发效率,作为测试人员,熟练掌握adb,我们可以管理设备或手 ...
- appium---常用的adb命令
在测试android-app的时候,adb命令可以帮助我们解决许多问题 什么是adb Android Debug Bridge,我们一般简称为adb,主要存放在sdk安装目录下的platform-to ...
- adb 命令简介
adb命令配置 1 在命令行下,进入用户目录 cd $HOME 2 .bash_profile文件 输入下行命令获取当前文件列表: ls -al 查看文件列表,如果没有.bash_profile文件, ...
- 『与善仁』Appium基础 — 4、常用ADB命令(一)
目录 1.启动和关闭ADB服务 2.查看ADB版本 3.指定adb server的网络端口 4.查询已连接设备/模拟器 5.获取安卓系统版本 6.为命令指定目标设备 7.发送文件到手机 8.从手机拉取 ...
- (转载)Mac系统下利用ADB命令连接android手机并进行文件操作
Mac系统下利用ADB命令连接android手机并进行文件操作 标签: Mac adb android 2016-03-14 10:09 5470人阅读 评论(1) 收藏 举报 分类: Androi ...
- python学习之——调用adb命令完成移动端界面测试
实现原理 Hierarchy Viewer:获得当前手机实时的UI信息,方便用于手机的自动化测试: python中的subprocess.Popen():调用系统命令: uiautomator工具:获 ...
- APP测试时常用adb命令
ADB全称Android Debug Bridge, 是android sdk里的一个工具, 用这个工具可以直接操作管理android模拟器或者真实的andriod设备(手机),故在其实工作可以给我们 ...
随机推荐
- 七、smarty--缓存的控制
1.建议缓存 $smarty->cacheing = true; //设置为2是给每一个模板设置缓存 $smarty->setCacheDir(“”); 2.处理缓存的生命周期 $smar ...
- 从curl命令获取libcurl的用法
libcurl的用法参数太多 有时候弄不好 可以先用curl命令实现了 然后获取相应的libcurl代码 比如要上传文件 curl -T d:/h.txt http://demo.xudp.cn/up ...
- C# 利用AForge.NET开源类库实现 图像素描效果
引入DLL: using AForge.Imaging; using AForge.Imaging.Filters; //using AForge.Video.DirectShow;可以使用摄像头图像 ...
- OpenCV学习笔记(4)——图像上的算术运算
学习图像上的算术运算,加法,减法,位运算等 1.图像加法 使用cv2.add()将两幅图像进行加法运算,也可以用numpy运算,直接img+img1.两幅图像的大小和类型必须一致,或者第二个图像可以是 ...
- oracle 12 安装
oracle 12 第二版本安装 下载地址 https://www.oracle.com/technetwork/cn/middleware/webcenter/content/downloads/ ...
- 【DVWA】Brute Force(暴力破解)通关教程
日期:2019-08-01 14:49:47 更新: 作者:Bay0net 介绍:一直以为爆破很简单,直到学习了 Burp 的宏录制和匹配关键词,才发现 burp 能这么玩... 0x01. 漏洞介绍 ...
- conftest.py作用范围
前言 一个测试工程下是可以有多个conftest.py的文件,一般在工程根目录放一个conftest.py起到全局作用.在不同的测试子目录也可以放conftest.py,作用范围只在该层级以及以下目录 ...
- python学习之网络基础
七 网络编程 7.1 C/S B/S架构 7.1.1 认识 Client : 客户端 Browser :浏览器 Server :服务器端 C/S:客户端与服务器之间的构架 B/S:浏览器与服务器之间的 ...
- for循环实现九九乘法表
<!--for循环实现九九乘法表--> <table border="> <tbody> {% for x in range(1,10) %} <t ...
- Studio 3T 破解教程
亲测可用 ,且小编一直在使用 1.创建文件studio3t.bat 并将下面这段内容复制 @echo off ECHO 重置Studio 3T的使用日期...... FOR /f "toke ...