1.手机打开‘开发者模式’、USB调试。如果 出现弹窗,选择传输文件模式
2.pc端打开两个终端。
3.选取任意一个终端执行命令adb devices 检查一下手机是否已经链接成功
(如果连接失败可能是数据线无法传输数据,或者是手机设置USB调试--传输文件选择有问题)
4.另一个终端执行命令“adb logcat -c ”清除手机全部日志然后执行一下命令
注意里面的‘添加包名’要更换成自己测试的app包名
adb shell monkey -ignore-crashes -ignore-timeouts-ignore-security-exceptions --ignore-native-crashes-
monitor-native-crashes--pct-touch 80-pct-trackball 5--pct-appswitch 5-pct-syskeys 5-pct-motion 5-p
添加包名 --throttle 300-v -v-v 500000 >D:\monkey-log-0418-50w.txt
500000是执行的次数可以根据自己的的需要修改。后面是日志保存的路径和名称
5.换一个终端执行下面命令筛选出APP的日志并保存
adb logcat '*:E'|findstr "测试包名">D:\adb-log-0418-50w.txt
adb logcat '*:W'|findstr "测试包名">D:\adb-log-0418-50w.txt
标记红色的是日志保存在电脑的路径和名称
6.分析删选第5部完成的日志。用python代码。
file = open(r'D:\monkey-log-7h.txt', 'r',encoding='utf-8')
lines = file.readlines()
type = list()
log = list()
for line in lines:
try:
a = line[31]
type.append(a)
if a=='W' or a=='E':
log.append(line)
print(line) # W和E的日志内容
except IndexError:
pass
file.close()
# print(type)
print(len(type)) # 日志行数
print(type.count('V'))
# print(type.count('D'))
# print(type.count('I'))
print(type.count('W')) # W日志的行数
print(type.count('E')) # E日志的行数
# print(log)
print(len(log)) # W和E日志的行数和
测试结果分析:
在日志中搜索下面关键字
1.ANR问题(程序无响应)
2.crash (闪退)
3.exception (异常)
4.force closed (强制退出)