其他
移动应用测试之APP日志的抓取
1.为什么要抓取app日志
2.Logcat收集app日志相关工具配置
2.1 ADB的安装与基础使用
# 1.查看
adb --help #查看帮助手册
adb devices #检查连接到电脑的安卓设备,常用的检查命令
adb shell dumpsys activity | find "mFocusedActivity" #Android 7.0及以下查看前台应用包名
adb shell dumpsys activity | find "mResumedActivity" #Android 8.0及以上用此命令查看包名
adb logcat #打印log信息
adb logcat -v time #log信息显示时间戳
adb logcat -v time > d:\logcat.txt #把日志信息重定向至d:/logcat.txt
# 2.连接与交互
adb connect ip:port #通过WiFi进行远程连接手机进行调试,手机和电脑需在同一个局域网上,计算机内部通信地址127.0.0.1,夜神模拟器默认的端口号是62001
adb disconnect ip:port #断开一个(ip:port)连接
adb shell #登录设备shell(安卓的底层是Linux)
# 3.文件传输
adb pull <手机文件路径> <本机路径> #从手机拉取文件到本地电脑
adb push <本地电脑路径> <手机路径> #从本地推送文件到手机
# 4.安装与卸载
adb install *.apk #为了快速获取apk的安装包路径,可以直接把apk直接拖到cmd的窗口,安装成功会返回success
adb uninstall <appPackage name> #卸载需要输入应用包名
adb version
查看adb版本,未出现报错安装配置成功。brew install android-platform-tools
.bash_profile
添加环境变量,使用open .bash_profile
打开编辑,在下方插入如下代码export ANDROID_HOME=/Users/用户名/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/platform-tools
source .bash_profile
更新变量,查看adb2.2Logcat语法命令
语法格式:
[adb] logcat [<option>] … [<filter – spec>] …
选项:
-b:加载可供查看的备用日志缓冲区,例如event或radio。默认使用 main和system缓冲区集。请参阅查看备用日志缓冲区
-c, –clear:清除所选的缓冲区并退出,默认缓冲区集为main和system。要清除所有缓冲区,请使用-b all -c。
-e, –regex=:只输出日志消息与匹配的行,其中是一个正则表达式
-m, –max-count=:输出行后退出。这样是为了与–regex配对,但可以独立运行
-print:与–regex和–max-count配对,使内容绕过正则表达式过滤器,但仍能够在获得适当数量的匹配时停止
-d:将日志转储到屏幕并退出
-f:将日志消息输出写入
-g, –buffer-size:输出指定日志缓冲区的大小并退出
-n:设置轮替日志的数量上限,默认值为4,需要使用 -r 选项
-r:每输出时轮替日志文件,默认值为16。需要使用-f选项
-s:相当于过滤器表达式‘*:S’;它将所有标记的优先级设为“静默”,并用于放在可添加内容的过滤器表达式列表之前
-v:设置日志消息的输出格式。默认格式为threadtime。
-D, –dividers:输出各个日志缓冲区之间的分隔线
-c:清空(清除)整个日志并退出
-t:仅输出最新的行数。此选项包括-d功能
2.3Logcat缓冲区
adb logcat –b radio
adb logcat –b system
adb logcat –b events
adb logcat –b main
//将缓冲区的log打印到屏幕并退出
adb logcat -d
//清除缓冲区log(testCase运行前可以先清除一下)
adb logcat -c
//打印缓冲区大小并退出
adb logcat -g
//输出log
adb logcat -f /data/local/tmp/log.txt -n 10 -r 1
3.日志收集过程
连接设备
adb devices
命令查看是否连接成功:molengsu@mlsdeMacBook-Pro / % adb devices
List of devices attached
FJH5T19114009780 device
查看设备log输出
adb logcat -d ##所有应用logcat输出
adb shell pm list package
adb shell dumpsys meminfo com.xxxx.xxxx ##com.xxxx.xxxx是包名
adb logcat -d --pid=30923
adb logcat -d --pid=30923 > logcat_test.txt
往期推荐
E
N
D