当前位置:网站首页>移动端测试必备技能: adb命令和抓包
移动端测试必备技能: adb命令和抓包
2022-07-20 00:23:00 【小梧敲代码】
移动端测试
是指对移动应用进行的测试,即实体的特性满足需求的程度,进行测试前需要搭建测试环境。
1 移动端自动化环境搭建
1.1 java安装
java JDK
安装jdk-8u181-windows-x64.exe
配置环境变量:
JAVA_HOME:D:\developer tools\Java\jdk1.8.0_181
配置path:%JAVA_HOME%\bin
%JAVA_HOME%\jre\bin
验证:终端输入 :java -verison
1.2Android SDK安装
解压Android-sdk.zip
配置环境变量ANDROID_HOME:D:\android-sdk-windows
配置path:
%ANDROID_HOME%\platform-tools
%ANDROID_HOME%\tools
验证
终端输入:
安装手机模拟器
推荐夜神模拟器
启动问题
夜神模拟器 bin目录下 nox_adb.exe 需要和SDK中 adb.exe 版本一致
将SDKplatform-tools下的adb.exe 拷贝到夜神bin目录更改名字–nox_adb.exe 替换即可
启动方式
1启动夜神模拟器,终端输入adb connect 127.0.0.1:62001
验证方式
2 ADB Android调试桥
2.1 adb概念
adb概念
ADB 全名 Android Debug Bridge,是⼀个调试⼯具
adb是一个C/S架构的命令行工具,由三部分组成,ADB就是连接手机和电脑通信的桥梁,只要这个桥梁 建立起来了,那么你就可以通过电脑来控制你的手机了
2.2 adb工作原理
adb 包含三个部分:
Client端:运行在pc端,可以通过adb命令对 Android 应用进行安装、卸载及调试等;
Daemon: 守护进程,运⾏在调试设备中,⼿机或模拟器,⽤来接收并执⾏ adb 命令;
Server端:运行在pc端中,客户端到 Android 设备上 adb 后台进程的连接,负责管理client和daemon 进行通信。
2.3 adb常见命令
包名(package):每个app的package是唯一的界面名(activity):web页面中的链接地
2.3.1 获取包名和界面名称命令
应用场景:自动化测试中需要知道app的包名和activity,通过命令获取使用步骤:开启被测应用,输入命令
命令格式:
adb shell dumpsys activity|findstr Focused
示例:查询xxxxapp
2.3.2 adb文件传输命令
应用场景:发送⽂件到⼿机、从⼿机中拉取⽂件
发送⽂件到⼿机命令格式:
adb push 电脑的⽂件路径 ⼿机的⽂件夹路径
示例:d盘下的apk 发送到 手机的sdcard目录下
手机中拉取⽂件命令行格式:
adb pull 手机端路径 pc端文件夹
2.3.3 获取app启动时间
应用场景:需要测试应用的启动速度
命令格式:
adb shell am start -W 包名/启动名
ThisTime :该界⾯ ( activity ) 启动耗时(毫秒)
TotalTime :应⽤⾃身启动耗时 = ThisTime + 应⽤ application 等资源启动时间(毫秒)
WaitTime :系统启动应⽤耗时 = TotalTime + 系统资源启动时间(毫秒)
2.3.4 获取手机日志命令
应用场景:bug日志信息发给开发,方便开发定位问题
使用步骤:
开启应用 – 执行bug产生位置 – 使用命令 – 获取日志信息
命令格式
adb logcat
常见命令
adb logcat|findstr com.xxxxx > E:/apk/logcat.txt
第一步:
第二步:
2.3.5 adb 其他相关命令
3 移动端抓包
手机抓包应用场景:
通过手机抓包对数据分析,确定bug产生是前台还是后台
使用fiddler工具对模拟器进行抓包
3.1 pc端fiddler配置
配置fiddler允许监听到https(fiddler默认只抓取http格式的)
配置fiddler允许远程连接
3.2 对手机端进行参数配置
手机和电脑连接同一个网络
手机系统设置-无线网-点击高级,代理选择手动,主机名就是fiddler的电脑ip地址,端口号,就是
fiddler的端口号,与浏览器中ip:端口号保持一致,点击确定即可 打开手机浏览器 安装fiddler 证书IP:8888
重启后查看
移动端 手动输入IP地址和端口号
浏览器输入IP:端口 举例:192.00.211:8888,跳转到fiddler下载页面(如图)
设置 > 更多设置 > 安全 > 凭据下面的(从SD卡安装)
ios 13 新增步骤
安装fiddler证书 跳转
打开 设置-通用-关于本机-证书信任设置,将DO_NOT_TRUST_FiddlerRoot 开关打开即可
抓包示例 : 百度浏览器 – 输入框输入‘xx教育’
最后感谢每一个认真阅读我文章的人,下面这个网盘链接也是我费了几天时间整理的非常全面的,希望也能帮助到有需要的你!
这些资料,对于想转行做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助……
如果你不想一个人野蛮生长,找不到系统的资料,问题得不到帮助,坚持几天便放弃的感受的话,可以点击下方小卡片加入我们群,大家可以一起讨论交流,里面会有各种软件测试资料和技术交流。
点击文末小卡片领取 |
敲字不易,如果此文章对你有帮助的话,点个赞收个藏来个关注,给作者一个鼓励。也方便你下次能够快速查找。
自学推荐B站视频:
零基础转行软件测试:自学完软件测试,拿到了字节的测试岗offer,堪称B站最好的视频!
边栏推荐
- Software performance test plan - performance test preparation
- As for the architecture design of business security platform, the top image has been explained to "me"
- Helm chart introduction
- AI常用框架和工具丨13. PyTorch实现基于CNN的手写数字识别
- cdh集群搭建(6.3)
- Oracle error reporting solution
- Awk statistical average max min
- Chapter 8: arithmetic prime sequence in interval [%d,%d], improved arithmetic prime sequence
- Using GRE to realize the communication between two internal networks across the public network
- 不就是个TCC分布式事务,有那么难吗?
猜你喜欢
Bi analytical thinking of business intelligence: Capital Management in manufacturing industry
Component architecture project construction - gradle unified, dependent management and configuration
Cve-2014-6271 "broken shell" vulnerability
Apipost :一款值得使用的利器
"Collection of Architects"
Lua code add comment rule
imx8mp kdump功能的实现
组件化架构项目搭建——Gradle统一、依赖管理与配置
[try to hack] SQL injection less7 (into outfile and Boolean blind annotation)
Devil cold rice | 103 devil sees the economy; Uncompleted residential flats, rental rider, Zhouyi and reservoir quality men
随机推荐
It's just a TCC distributed transaction. Is it so difficult?
If paging by frame fails - solution
App application testing methods and testing ideas
Edge 开发者沙龙|一小时精通Edge扩展开发
windows11安装MySQL5.7.X保姆级图文教程
web测试之功能测试常用的方法有哪几种?有什么要点要注意?
NFT in the eyes of blackash: the platform is crying for slaughter, and users send money to the door
测试/开发程序员小张相亲记......
WPF 实现抽屉菜单
Reading record "brain maintenance is urgent"
RS485 Serial Communications¶
El cascade selector dynamic loading data and echo data method (the most complete summary) < rootbaby>
Matlab tutorial_ Summary of guoyanfu's notes at National Taiwan University (with video materials attached)
2022杭电 中超
DOM基础操作
Software performance test plan - performance test preparation
cpolar应用实例之多设备数据采集
不就是个TCC分布式事务,有那么难吗?
el-table 用formatter 将接口返回的 多个数字类型的字符串 转换成对应汉字
Without available task slots, what will happen to Flink's new tasks?