职业经验 说透 APP 稳定性测试

机智的小白 · 2022年05月14日 · 最后由 机智的小白 回复于 2022年07月02日 · 7536 次阅读

最近面试了一些测试候选人,聊到 app 的稳定性测试相关话题时,比如什么是 app 稳定性测试,app 稳定性测试的目的,在什么时候执行稳定性测试最佳等,发现还是有很多的测试同学对 app 稳定性测试了解比较浅,甚至还会理解错误。为此给大家说说 APP 的稳定性测试。

一、 什么是 APP 稳定性测试
app 的稳定性也可以理解为 app 的健壮性、可靠性。通俗的说就是对 app 进行破坏性测试,app 也能达到稳定的一个状态。
对被测应用进行长时间的操作,在各种场景使用过程中都可以正常使用,不出现或极少出现崩溃/闪退、无响应等问题
好比一个健康的成年人,出现了普通发烧感冒也不会影响其正常的生活,那么我们会认为其身体还是健康的。回到 APP 测试也是一样,如果对被测应用进行各种操作,长时间操作,也不会影响 APP 的正常使用,我们就会认为这款 APP 在稳定性方面是符合预期的。

二、 APP 稳定性测试的目的
测试 APP 是否达到一个稳定的状态

三、 APP 稳定性测试什么时候执行
在面试时问到候选人 app 稳定性测试在什么时候执行效果最好?大部分候选人都是回答等 app 稳定后再开始进行稳定性测试。
如果理解了 app 稳定性测试的目的,都不会这么回答。app 稳定性测试目的是测试 app 是否达到一个稳定的状态,结合缺陷越早发现修复的成本越低的原则,越早发现 app 在稳定性方面的缺陷,越早暴露修复,上线后对用户的影响就会越小。所以 APP 稳定性在测试前期就开始执行测试,比如 APP 提测后,每天利用晚上的时间来执行,第二天早上看结果,既不会占用测试时间,也可以尽早发现问题。

四、 APP 稳定性测试如何执行
面试过程中问到 APP 稳定性测试怎么执行,大部分候选人都能回答出来使用 monkey 工具。Monkey 测试是最常用的一种测试手段。后续会专门写一篇文章详细说明 APP 稳定性测试工具

五、 APP 稳定性判断
APP 稳定性判断的常用的指标是崩溃率、ANR 率。
如果用计算公式来说明那就是:1-崩溃率/ANR 率来衡量,崩溃率/ANR 率越小,稳定性越好。测试阶段可以用公式:崩溃率/ANR 率 = 崩溃次数(ANR 次数)/ 总操作次数 * 100%
上线后使用的公式:崩溃率/ANR 率 = 一段时间内崩溃用户数 / 一段时间内总用户数 * 100%

六、 影响 APP 稳定性的因素
常见影响 APP 稳定性的原因有以下几种:
● 内存问题

  1. app 所需内存超过设备限制(如可用内存过低时),导致 app 崩溃闪退
  2. app 内存泄漏,耗尽设备全部内存导致整个系统崩溃
  3. app 内存越界,使用了非授权的内存位置导致 app 崩溃 ● 程序逻辑错误
  4. 数组越界,如负数索引、超过数组长度的索引
  5. 堆栈溢出,如堆栈区缓冲区被填满,堆栈空时取数据等
  6. 并发操作,如并发时调用了一个已释放的指针
  7. 逻辑错误,如 0 除作为除数问题 ● 交互逻辑
  8. app 界面交换操作滑动导致 app 崩溃 ● 未处理等中断及异常
  9. app 在使用过程中面临很多中断、如切后台、接听电话、切换网络、断网以及用户的一些非预期操作 ● 网络因素
  10. 比如网络不佳、弱网环境,无法达到 app 所需的快速响应时间,导致 app 崩溃
  11. 不同网络的切换

希望本次的分享可以帮助大家更好的理解 APP 的稳定性测试以及更好的掌握 APP 稳定性测试。

欢迎关注公众号

共收到 5 条回复 时间 点赞
仅楼主可见

用什么工具进行 app 稳定性呀

请问公众号是?

S.chen 回复

欢迎关注公众号:测试记

拉拉肥👧 回复

比较常用的是 Monkey

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册