本文已参与掘金创作者训练营第三期「高产更文」赛道
1.为什么要做客户端稳定性建设
一个app安装在一台设别上,总是闪退、屏幕热、机身热、设备卡死甚至崩溃等现象,这样的app是不配被叫做一个app的。也就是说,最基本的技术要求都没有被满足,一个app安装在手机上,给用户带来了各种各样的功能,代价是占用了收集的存储和计算资源,但是如果过分地占用,且不说隐私安全、数据安全的问题,仅仅是资源的过分占用,在与竞品的竞争中已经处于劣势了。
2.怎么做
2.1客户端稳定性是指什么
第一步,需要去定义清楚什么是稳定的,常用的结果性指标有:IOS/安卓的崩溃率。过程性指标就比较多了,具体可以参考我先前的一篇文章:juejin.cn/post/700028… 并且对上述指标进行看板的建设与动态的分析跟踪。
2.2构建全流程稳定性保障节点
可以根据项目流程规范实际情况,在必要的节点进行常态化的测试和卡点。列举一些常见的手段:
- 稳定性测试常态化。需要有目的、有针对性的对于自己的客户端产品的特性有深刻的理解,这个理解方式比较快速的就是对原有的线上稳定性相关的问题进行深刻分析,看看到底什么是主要原因。再针对具体原因进行拦截和防御。
- 止损能力。一旦发生了稳定性相关的事故,我们是否具备快速止损的能力,比如在灰度阶段就发现了,如何止损。在放量后发现,又要如何止损。
2.3客户端稳定性测试常用工具
- Monkey, 客户端测试同学对这个应该都比较熟悉,即便是不熟悉,很多大厂的客户端测试工具都是在封装了monkey基础上,做的个性化开发。做稳定性的测试其实也是各种case的重新编排,当然少不了monkey了。
- 内测泄漏检测利器,比如java常用的Leakcanary.
总的来说,软件没问题没有银弹。