代码编织梦想

常用ADB命令简介

一:命令行
adb -help 查看adb 命令简介
adb start-server启动服务
adb kill-server 杀掉服务
adb devices 查看设备号
adb reboot 重启
adb shell 进入设备
adb -s xxxx shell 对指定设备操作:xxx每个设备的设备号

二:日志整理
adb logcat > log.txt ==》‘>’新建并日志输出到txt文档中,’>>'第一次新建txt,后期增量填入log到文件
adb pull /data/log xxxx pull 设备路径 =====> windows 本地路径
adb push xxxx /data/log push windows 本地路径 ===>设备路径
adb logcat |findstr 包名或|grep 包名 ==》查看apk运行日志
Android 的日志分为如下几个优先级(priority):
V —— Verbose(最低,输出得最多)
D —— Debug
I —— Info
W —— Warning
E —— Error
F —— Fatal
S —— Silent(最高,啥也不输出)
按某级别过滤日志则会将该级别及以上的日志输出。

比如,命令:
adb logcat *:W

adb logcat -c =======》清理日志
adb shell dmesg 内核日志

三:查看正在home界面运行apk
adb shell dumpsys window |findstr mCurrentFocus
shell 进入==》dumpsys window |grep mCurrentFocus
mCurrentFocus=Window{1e70da7 u0 com.huawei.android.launcher/com.huawei.android.launcher.unihome.UniHomeLauncher}
{包名/apk启动名}
adb shell pm list packages -3 ====》查看系统安装apk,-3为第三方apk,-s为系统apk

四:卸载、安装
adb install apk_path
pm install xxx ======》 安装apk,xxx-apk路径s
adb uinstall 包名
pm uinstall 包名 =========>卸载apk -k 保留数据

五:启动、停止apk
adb shell am start -n 包名/启动名 =====》启动apk
adb shell am force-stop 包名 ======》停止apk
top |grep 包名 获取pid
kill -9 pid ======》通过pid 停止
adb shell pm clear apk ======》清楚apk缓存
db shell pm path apkname ======》查看apk安装路径
adb shell am send-trim-memory ===》收紧内存,表示向 12345 的进程,发出RUNNING_LOW 的收紧内存命令

六:查看、新建、复权
mkdir xxxx ======》新建文件夹
touch xxxx ======》新建文件
chmod 777 * ======》给文件夹、文件赋予权限
cat files
tac files =======》分别从前往后、从后往前看文件,
more files ========》根据窗口大小,一页一页的现实文件内容
less files =====》和more类似,其优点可以往前翻页,可进行可以搜索字符
tail x files <=>tilf files =======》 只显示最后几行,x为行号
head x files ======》显示头x行
nl files <> cat -n ========>显示行号
adb shell dumpsys activity services ======》查看运行相关信心,可指定apk则查看与apk相关
top 、ps -ef |grep xxxx =======>查看相关进程

ps
USER PID PPID VSIZE RSS WCHAN PC NAME
root 1 0 8904 788 ffffffff 00000000 S /init
root 2 0 0 0 ffffffff 00000000 S kthreadd
u0_a71 7779 5926 1538748 48896 ffffffff 00000000 S com.sohu.inputmethod.sogou:classic
u0_a58 7963 5926 1561916 59568 ffffffff 00000000 S org.mazhuang.boottimemeasure
shell 8750 217 10640 740 00000000 b6f28340 R ps

列名 含义
USER 所属用户
PID 进程 ID
PPID 父进程 ID
NAME 进程名

top
User 0%, System 6%, IOW 0%, IRQ 0%
User 3 + Nice 0 + Sys 21 + Idle 280 + IOW 0 + IRQ 0 + SIRQ 3 = 307

PID PR CPU% S #THR VSS RSS PCY UID Name
8763 0 3% R 1 10640K 1064K fg shell top
131 0 3% S 1 0K 0K fg root dhd_dpc
各列含义:

列名 含义
PID 进程 ID
PR 优先级
CPU% 当前瞬间占用 CPU 百分比
S 进程状态(R=运行,S=睡眠,T=跟踪/停止,Z=僵尸进程)
#THR 线程数
VSS Virtual Set Size 虚拟耗用内存(包含共享库占用的内存)
RSS Resident Set Size 实际使用物理内存(包含共享库占用的内存)
PCY 调度策略优先级,SP_BACKGROUND/SPFOREGROUND
UID 进程所有者的用户 ID
NAME 进程名

七:录屏、截图
adb shell screencap -p /sdcard/screen.png ===》截图
adb shell screenrecord /sdcard/demo.mp4 ===》录屏默认最长3min,可设置录屏时间长短
参数 含义
–size WIDTHxHEIGHT 视频的尺寸,比如 1280x720,默认是屏幕分辨率。
–bit-rate RATE 视频的比特率,默认是 4Mbps。
–time-limit TIME 录制时长,单位秒。
–verbose 输出更多信息。
adb

shell wm size =====-》输出示例:Physical size: 1080x1920该设备屏幕分辨率为 1080px * 1920px。如果使用命令修改过,那输出可能是:Physical size: 1080x1920 Override size: 480x1024
adb shell wm density ======》屏幕密度
adb shell wm density 160
adb shell wm density reset ======》屏幕密度修改及恢复
adb shell dumpsys window displays ======》显示屏参数
adb shell wm size 480x1024
adb shell wm size reset ======》修改并恢复命令
adb shell wm overscan 0,0,0,200 =======》显示区域,其他地方四个数字分别表示距离左、上、右、下边缘的留白像素,以上命令表示将屏幕底部 200px 留白

八:事件输入
1,input
adb shell input text xxxxxxxxx =====》向设备空间输入字符串信息
ddb shell input tap 500 1450 =====》xx xx 分别为屏幕坐标,并点击
adb shell input swipe 100 500 100 1450 100 ====》从屏幕坐标(100,500)开始,滑动到(100,1450)结束,整个过程耗时100ms
adb shell input keyevent 3 =====》模拟android命令,3表示回到home界面
adb shell dumpsys battery =====》可dump相关信息

举例keyevent:
keycode 含义
3 HOME 键
4 返回键
5 打开拨号应用
6 挂断电话
24 增加音量
25 降低音量
26 电源键
27 拍照(需要在相机应用里)
64 打开浏览器
82 菜单键
85 播放/暂停
86 停止播放
87 播放下一首
88 播放上一首
122 移动光标到行首或列表顶部
123 移动光标到行末或列表底部
126 恢复播放
127 暂停播放
164 静音
176 打开系统设置
187 切换应用
207 打开联系人
208 打开日历
209 打开音乐
210 打开计算器
220 降低屏幕亮度
221 提高屏幕亮度
223 系统休眠
224 点亮屏幕
231 打开语音助手
276 如果没有 wakelock 则让系统休眠

其他:
adb shell dumpsys iphonesubinfo ====》获取服务id 即IMEI
adb shell getprop ro.build.version.release =====》系统版本
adb shell ifconfig | grep Mask ======》ip地址
adb shell cat /sys/class/net/wlan0/address =====》mac地址
adb shell cat /proc/meminfo =====》内存信息
adb shell cat /system/build.prop =======》硬件及系统属性
adb shell
su
date -s 20160823.131500 ========》查看系统时间
*monkey ====》Monkey 可以生成伪随机用户事件来模拟单击、触摸、手势等操作,可以对正在开发中的程序进行随机压力测试*
adb reboot bootloader =======》重启到 Fastboot 模式
adb root
adb shell setenforce 1 /0 =======》启用/禁用 SELinux,安全相关命令
启用 dm_verity
adb root
adb enable-verity
禁用 dm_verity
adb root
adb disable-verity ====》启用/禁用 dm_verity
**本人对工作经验的总结,方便自己记忆,希望能帮助到大家,未涉版权问题,不喜勿喷谢谢!!!

测试环境的初步搭建
Android自动化测试-uiautomatorviewer元素定位工具配置
https://blog.csdn.net/weixin_42914706/article/details/111087910

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接: https://blog.csdn.net/weixin_42914706/article/details/111087992

Android自动化测试-uiautomatorviewer工具配置-爱代码爱编程

android +uiautomatorviewer 页面元素工具安装配置 需要资源下载 1,Android-SDK 3.0.0(UiAutomatorViewer 启动依赖) 链接:https://pan.baidu.com/s/140oqviAFtGoGCch0nPkwFA 提取码:mjn1 2,ADB工具(链接安卓与PC) 链接:https://

测开入门篇《环境管理、编码规范、项目结构》-爱代码爱编程

坚持原创输出,点击蓝字关注我吧 作者:清菡博客:oschina、云+社区、知乎等各大平台都有。 目录 一、前提准备二、虚拟环境1.virtualenv的安装和应用2.pipenv的安装和使用3.导出虚拟环境为requirements.txt文件4.pipenv的相关使用命令5.需要在虚拟环境中起项目三、Python代码规范四、工程结构化测试平台

测试理论 | 服务端测试-爱代码爱编程

阿里 qa 导读:久违了,夏去秋至,阿里巴巴技术质量新人手册又开始更新啦~ 上期我们给大家带来的是成为测试多面手中的移动测试篇,今天我们继续和大家讲讲服务端测试。 服务端测试 服务端测试有两种:一种是直接对 WEB 或者 APP 的 API 接口进行测试;另一种是对更后端的数据库、缓存系统、中间件、文件系统等进行测试,核心就是输入输

Appium自动化测试 进阶-爱代码爱编程

所谓功能测试,其实无非是将被测APP的功能都使用一遍,看有没有出现报错,或者其他不应出现的结果。 上一个脚本已经实现了通过代码来使用APP的一些功能,理论上其实是已经在测试了,但还远谈不上“自动化”。因为,不是说不用手亲自去屏幕上一个功能一个功能地点点点就叫自动化,自动化是一种思想,一种将测试规范化,模块化的处理。前期的开发需要一些工作,但后期的维护,修改

Python3 《零基础小白从入门到实战》之“while循环”-爱代码爱编程

根据条件或指定的次数,反复执行循环体语句,循环结构有:while 和 for 两种循环结构。   语法格式: """ while 条件表达式: 符合条件需要运行的代码 通常会有变量值的改变 条件表达式不满足的情况停止循环 """ 说明: 如果条件为真时,执行循环体,如果条件为假时,停止循环  

软件质量保证复习-爱代码爱编程

软件质量保证复习 标签(空格分隔): 软件质量保证 一、软件质量保证概念 软件质量保证(SQA)是应用于整个软件过程的保护性活动。 软件质量保证包括质量管理方法、有效的软件工程技术、在整个软件过程中采用的正式技术复审、多层次的测试测策略、对软件文档及其修改的控制、保证软件遵从软件开发标准的规程以及度量、报告机制。 二、静态测试、黑盒测试、白盒测试