monkey、遍历、功能测试想必大家都不陌生,monkey 随机性强能够发现隐藏的问题但是随机性强,不可控,效率低;遍历流程可控,但是往往需要较高的时间成本编写维护相关脚本。MQC 在自动化测试领域耕耘多年,在充分吸取各种测试方式优点的情况下,为兼容性测试打造了全新的测试工具 Ripper。 我们将与大家分享 MQC 是如何利用现有的数据来提升测试效率;如何智能化的操作 App;如何有效的去定位 bug。
大多数公司在 App 开发的同时往往有三方面的考虑,时间成本、开发成本、失败成本。
•与时间赛跑
•开发成本
•失败成本
•重复性工作多,测试速度慢
•需要关注的点多,QA 成本高
•变化快,需要经常性修改,维护成本高
•流程重复,难以发现 crash
•用例失败原因往往是脚本或是设置问题
•动作不可控,覆盖程度低
•测试耗时长
•开发定位问题困难
•提高检测覆盖度
•缺少具体的业务场景
•缺少问题定位
•更多的动作:多指操作 (缩放)、连击、中文输入
•精确控制,高并发,测试效率高
•Perftool
•场景
为了对比 Ripper 与 monkey 的测试效果,我们编写了一个包含各种控件(viewpager、listview、fragment、imageview 等等)的属性页面结构 App。
•Anr
KeyDispatchTimeout
•IllegalStateException
Fragment already added
50 ~ 200ms
•控件(语义、类型)
•弹窗
•为数十万 app 提供测试服务
•数百万页面
•缩放,连击
•视频切换,方向切换
•登录,注册,反馈
•快速遍历
无法复现的 bug 是没有价值的。相信大家常常会因为无法定位问题、复现问题而无法有效修复 bug,MQC 在测试 App 质量的同时提供了 Crash 定位、Crash 解决方案来辅助开发修复 bug。