目录

目标

一、APP命令格式

1.1 查看已连接的设备列表

1.2 断开连接设备

1.3 无线连接设备

1.4 开启adb服务

1.5 关闭adb服务

1.6 安装软件包

1.7 卸载软件包

1.8 获取包名

1.9 获取当前窗口(注意大小写区分)

1.10 清除缓存

1.11 启动/停止应用

1.12 获取手机日志

1.13 获取启动时间

1.14 获取内存信息

1.15 获取CPU

1.16 获取流量消耗值

1.17 稳定性测试(Monkey)

二、Charles手机抓包

2.1 Charles工具介绍

2.2 Charles工具的使用 —— APP抓包

2.3 Charles工具的使用 —— APP弱网测试


目标

  • 能独立说出常用的APP命令格式(内存、CPU、安装、卸载、流量、启动时间、抓取日志)
  • 能使用命令测试APP客户端的稳定性(monkey)
  • 能抓取手机包(https)

一、APP命令格式

  • ADB( Android Debug Bridge) 是一个通用命令行工具,也是Android软件测试开发工作者常用的调试工具
  • ADB可以用来安装卸载软件、 管理安卓系统软件、 启动测试、 抓取操作日志等
     

SDK下载地址:http://tools.android-studio.org/index.php/sdk ADB下载地址: https://pan.baidu.com/s/1R-XimjkEzhvLfZ0rgjzJIQ ( 提取码: 3hnt)

1.安装安卓SDK
2.安装ADB
3.配置环境变量( 计算机右键—属性—高级系统设置—环境变量--新增系统变量)
        ① 配置SDK变量
        ② 配置Path路径
4.启动命令行, 运行adb, 检查安装结果

        未安装时:

android 抓包 adb log 安卓adb抓包_Charles

        已安装成功:

android 抓包 adb log 安卓adb抓包_android 抓包 adb log_02

1.1 查看已连接的设备列表

adb devices

1.2 断开连接设备

adb disconnect 手机ip

1.3 无线连接设备

adb connect 手机ip(手机和电脑处于同一网段)

1.4 开启adb服务

adb start-server

1.5 关闭adb服务

adb kill-server

1.6 安装软件包

adb install /路径/软件包文件名(-r 保留数据 -t 强制覆盖 例如: adb install -r -t /路径/软件包的
文件名)

android 抓包 adb log 安卓adb抓包_Charles_03

1.7 卸载软件包

adb uninstall app的包名

android 抓包 adb log 安卓adb抓包_包名_04

1.8 获取包名

# 获取手机里所有的包名
adb shell pm list packages

# 获取手机里所有的系统应用的包名
adb shell pm list packages -s

# 获取手机里所有第三方软件的包名
adb shell pm list packages -3

1.9 获取当前窗口(注意大小写区分)

# Windows: 
adb shell dumpsys window | findstr mCurrentFocus

# Mac/linux: 
adb shell dumpsys window | grep mCurrentFocus

android 抓包 adb log 安卓adb抓包_包名_05

1.10 清除缓存

adb shell pm clear 包名

android 抓包 adb log 安卓adb抓包_adb常用命令_06

1.11 启动/停止应用

# 启动: 
adb shell am start 包名/activity名(包名是软件的标识,Activity主要描述app的某个页面)

# 停止: 
adb shell am force-stop 包名

android 抓包 adb log 安卓adb抓包_android 抓包 adb log_07

1.12 获取手机日志

adb logcat > 本地文件

 注意: 执行命令后,手机上操作复现步骤

抓取日志以后重定向到某个文件
'>' : 覆盖文件内容
'>>' : 追加在文件末尾
使用场景: 测试期间记录日志. adb logcat >本地文件
避免问题由于不确定复现步骤而导致无法复现,并且被研发拒绝.        

1.13 获取启动时间

adb shell am start -W 包名/activity名
-W :获取时间
-S:启动前强行停止应用 (冷启动的时间)
-R 数字: 启动次数
注意:参数均为大写,顺序可以调整,但-R后必须是数字

android 抓包 adb log 安卓adb抓包_adb常用命令_08

1.14 获取内存信息

adb shell dumpsys meminfo 包名

android 抓包 adb log 安卓adb抓包_android 抓包 adb log_09

1.15 获取CPU

# 1. 
adb shell dumpsys cpuinfo (查看当前CPU占用情况)
# 2.
adb shell top -s 9(代表CPU)

android 抓包 adb log 安卓adb抓包_adb常用命令_10

1.16 获取流量消耗值

# 1.获取userId : 
adb shell dumpsys package 包名 | findstr userId

# 2.获取上行: 
adb shell cat proc/uid_stat/userId/tcp_snd

# 3.获取下行:
adb shell cat proc/uid_stat/userId/tcp_rcv

# 注意:cat后的路径是固定; userId中的'i"是大写; package后不加s

android 抓包 adb log 安卓adb抓包_功能测试_11

1.17 稳定性测试(Monkey)

# 1. 
adb shell monkey -p 包名 数字 -v >本地文件

# 2. -v -v -v :最高级别日志

# 3. 常用命令:
adb shell monkey -p 包名 10000 -v -v -v --throttle 500 > 本地文件

语法: adb shell monkey -p 包名 -v(日志) 次数 >c:\日志.txt
说明:
        -p 指定包名 ( 所有命令都在此包内执行, 如不指定, 则在整个系统内执行)
        -v log详细程度( 最高支持’ -v -v -v’ 最详细)
        --throttle 单步延时( 每步操作间隔, 单位毫秒)
        --pct-touch 点击事件
举例:
不控制事件: adb shell monkey – p com.tpshop.malls – v – v 1000 >C:\Users\18810\Desktop\monkey.txt
控制事件: adb shell monkey – p com.tpshop.malls --throttle 100 --pct-touch 50 --pct-motion 50 – v – v 1000 >C:\Users\18810\Desktop\monkey.txt

二、Charles手机抓包

2.1 Charles工具介绍

Charles是一款在Mac下常用的数据包截取工具, 在做移动开发时, 为了调试移动端与服务端的网络通讯协议, 常常需要截取网络数据包来进行分析。

抓包的原理

android 抓包 adb log 安卓adb抓包_Charles_12

2.2 Charles工具的使用 —— APP抓包

1. 手机和电脑保持同一网段( 连接同一个WiFi)

2. Charles设置代理

  • Proxy->Proxy Sting->修改端口号

android 抓包 adb log 安卓adb抓包_android 抓包 adb log_13

  • 查看电脑IP( ipconfig)

3. 手机安装证书-01

① 点击Charles菜单栏Help->SSL Proxying->install Charles Root Certificates on a Mobile Device or Remote Browser,可以看到手机端安装证书提示

android 抓包 adb log 安卓adb抓包_包名_14

android 抓包 adb log 安卓adb抓包_包名_15

3. 手机安装证书-02
① 根据以上提示, 打开手机的WiFi设置, 连接和电脑同一个WiFi【 或者连接电脑开启的热点】 , 设置代理IP与端口(代理IP就是电脑的IP, 端口就是Charles的代理端口8888);
② 手机浏览器访问网页, 输入chls.pro/ssl, 出现证书安装页面;
③ 如果是苹果手机, 点击安装后完成, 在设置->通用->关于手机, 信任证书如下图一:

android 抓包 adb log 安卓adb抓包_android 抓包 adb log_16


④ 如果是Android手机, 点击下载, 然后在手机设置的安全里面, 安装证书如下图二:


android 抓包 adb log 安卓adb抓包_包名_17

4. Charles确认连接

① 手机设置好后, Charles页面会弹出以下信息, 点击“ Allow”

android 抓包 adb log 安卓adb抓包_Charles_18

2.3 Charles工具的使用 —— APP弱网测试

弱网测试方法

  • SIM卡网络切换
  • 实际弱网场景测试( 地铁、 电梯、 停车场)
  • 使用软件进行网络代理( Charles)
  • ① 保证抓包成功(参考抓包教程)
  • ② Charles打开弱网设置配置项
  • ③ 设置带宽值
2.打开弱网设置配置项 路径: Proxy->Throttle Settings

android 抓包 adb log 安卓adb抓包_功能测试_19

android 抓包 adb log 安卓adb抓包_android 抓包 adb log_20


3.设置带宽值
弱网、 2G、 3G的上下行速率如下:

网络上行下行弱网10302G15503G3842800

android 抓包 adb log 安卓adb抓包_包名_21