当前位置: 首页 > news >正文

monkey-安卓稳定性测试

一、adb执行命令

1.monkey随机事件指令:
adb shell monkey -p com.tytu.enter --ignore-crashes --ignore-timeouts --ignore-security-exceptions -v -v -v --throttle 300 -s 121212 --pct-syskeys 0 --pct-anyevent 0 --pct-touch 100 --pct-motion 0 100000 2>D:\ty\mk\log.txt\monkeyerror.txt 1>D:\ty\mk\log.txt\monkeyinfo.txt

命令解释说明
-p com.tytu.enter包名
–ignore-crashes忽略崩溃
–ignore-timeouts忽略超时
–ignore-security-exceptions忽略安全异常
-v -v -v详细日志
–throttle 100等待的时间100毫秒
-s 121212种子方便复现bug,建议每个版本不一样(也可以不带上,执行后去monkeyinfo.txt文件中查找种子,再次复现bug的时候再带上种子)
–pct-syskeys 0 --pct-anyevent 0防止按音量键
–pct-touch 30点击事件占比30%
–pct-motion 70移动事件占比70%
10000点击次数10000次
2>D:\ty\mk\monkeyerror.txt将错误(闪退/anr等)输出重定向到,文件地址要存在否则会报文件路径不存在
1>D:\ty\mk\monkeyinfo.txt将标准比如滑动点击等事件输出重定向到,文件地址要存在否则会报文件路径不存在

2.获取某个包的日志命令1:
adb logcat -v time -d | findstr /i “com.tytu.enter” > “D:\ty\mk\log.txt”

命令解释说明
-v time这个选项会在日志中包含时间戳
-d这个选项会让 logcat 在输出当前的日志缓冲区后退出,而不是持续输出
findstr /i “com.tytu.enter”这是 Windows 系统中的命令,用于过滤包含包名的日志行。/i 参数表示忽略大小写
> “D:\ty\mk\log.txt”这部分将输出重定向到指定的文件路径

获取某个包的日志命令2:
adb logcat -v time -d | findstr /i “com.tytu.enter” | findstr /r /c:“^.* 16:[0-5][0-9]:[0-5][0-9]…" /c:"^. 17:[0-5][0-9]:[0-5][0-9]…*” > “D:\ty\mk\log.txt”

命令解释说明
findstr /r /c:“^.* 16:[0-5][0-9]:[0-5][0-9]…" /c:"^. 17:[0-5][0-9]:[0-5][0-9]…*”只导出16和17点的时间的日志

3.以上执行后会有这3个文件
在这里插入图片描述

log.txt在手机里面的log文件夹(data/log目录下)里面导出的,包含各种响应信息。V D I W E F S 分别都有不同的涵义
monkeyerror.txt闪退等信息
monkeyinfo.txtmonkey测试时的具体操作,如点击/滑动等操作事件的详细信息

二、日志分析

monkeyerror.txt文件进行如下搜索,如果能搜到以下几个关键词,可以基本判断测试不通过:

ANR问题(程序无响应)搜索“ANR"(application no response)
闪退问题搜索"crash"
异常搜索exception
强制退出搜索"force closed

把文件直接发给开发,下面的日志可以定位到具体的崩溃的原因
在这里插入图片描述

log.txt文件解释:

V (Verbose)详细信息,通常用于调试。这是最低优先级的日志消息,可以包含大量的详细信息
D (Debug): 调试信息比 verbose 优先级高,通常用于调试程序时的信息输出
I (Info)信息消息,表明一般的、有用的信息,比如应用启动、停止等
W (Warning)警告消息,表明潜在的问题,比如未处理的异常、资源使用不当等
E (Error)错误消息,表明更严重的问题,比如应用崩溃、系统错误等
F (Fatal)致命错误,表明非常严重的问题,可能导致系统或应用完全停止运行
S (Silent)静默消息,表明该消息不应该被输出到日志中

把文件直接发给开发
在这里插入图片描述
不知道如何定位的可以直接把以上三份文件log.txt、monkeyerror.txt、monkeyinfo.txt,全部给到开发

三、adb命令停止了,手机还在执行

adb shell ps |find “monkey”

adb shell kill 进程ID
在这里插入图片描述

四、解决monkey乱点击的问题+回到要测试的活动页

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

五、报错解决

在这里插入图片描述
开发没有针对活动名称开放权限,可以用启动页activity来启动app:
adb shell am start -n com.tytu.enter/com.ly.home.ui.activity.LaunchActivity
在这里插入图片描述


http://www.mrgr.cn/news/70389.html

相关文章:

  • 构建高效在线教育:SpringBoot课程管理系统
  • 【CSS in Depth 2 精译_060】9.3 详解 CSS 作用域的相关概念、最新 @scope 规则的应用及注意事项
  • SpringSecurity创建一个简单的自定义表单的认证应用
  • 02向量与矩阵方程
  • 医院信息化与智能化系统(22)
  • 【大模型】docker部署glm-4-9b-chat,并部署到服务器上
  • 【语言建模】数据集合集!
  • 应用于新能源汽车NCV4275CDT50RKG车规级LDO线性电压调节器芯片
  • 【漏洞复现】用友 U8 OA getSessionList.jsp 敏感信息泄漏漏洞
  • 2024年最新项目管理工具推荐:哪些支持自动化测试?
  • 2024年12月一区SCI-加权平均优化算法Weighted average algorithm-附Matlab免费代码
  • 专题十——字符串
  • 网络安全之SQLMAP _DNS注入配置方法
  • MySQL初学之旅(2)增删改查—上
  • 基于微信生态的开源 AI 智能名片 2+1 链动模式 S2B2C 商城小程序源码拉新策略研究
  • linux内存管理学习笔记
  • 制造业怎么用好仓库管理系统?仓库管理系统在制造业中的应用实例
  • Python __del__()销毁对象
  • python爬虫豆瓣top250
  • 精华帖分享|历史波动率和已实现波动率纠缠研究
  • 3. JVM 发展历程
  • 【Linux进程篇1】认识冯·诺依曼体系结构(引出进程详解)
  • 皮卡超级壁纸 1.4.1 | 解锁会员版的全景壁纸、动态壁纸和超级壁纸
  • solo博客源码使用idea编译运行
  • ‘conda‘ 不是内部或外部命令,也不是可运行的程序或批处理文件,Miniconda
  • 日常bug记录,easyexcel导入报错convert data ... to class java.math.BigDecimal error