ios测试必备技能, Instruments - Allocation测试内存

Posted Dobyy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ios测试必备技能, Instruments - Allocation测试内存相关的知识,希望对你有一定的参考价值。

   个人觉得, 对于专项的测试, 万变不离其宗的是策略,或者说是方案的设计.  对于执行步骤-预期结果等等这都是设计的过程中最为重要的, Apple为ios的开发者提供了Instrument这个强大的工具箱,然而工具的使用不能说是自己已经学会了专项的技术, 策略永远是重点.

 

测试开始:

1 下面执行测试的是我自己写的一款APP,不如所料的是存在问题的(笔者开始学OC不久,而且之前都是脚本语言较多,对于移动端的测试略少,所以才开始学习OC),我们将使用Allocation进行内存测试

 

2 了解需求,制定测试方案(自导自演~~):

  1)需求:炫彩动图大师(实际内容并没有这么酷 - -),是一款自我定制(因为我常晚睡,想帮忙催眠下自己)

  

    @1,通过独有的精彩选图,被自己喜欢的音乐催眠,让自己轻松的入睡,(定制的,因为我就这么2 - - 好哄)

    @2,点击上一张,下一张,切换选gif图,音乐也随之切换.

  2)测试方案: <测试步骤>点击下一张,mark一下内存,持续4-5次后, 观察内存. <预期结果>不存在内存增长

3 执行测试:

  1)打开allocation

    ->                                  <Allocation>

  2)选择app-并且观察策略改为Generations,然后点击左上角红点 -> 开车

    

  3)执行:

  

    @1 启动app,待稳定后-点击一下mark

    @2 点击<下一张>,稳定后mark(这里的稳定后,可以通过上方的观察界面图形,看到稳定值)

    @3 重复第二步4-5次

    @4 点击左上角关闭,进入分析

    

  4) 分析:

    

    @1 如上图看出,每次执行后这里都存在的增量约为1M左右, 中间的我们参考从第二开始.

    @2 一般来说,第一次mark是启动之后,这里存在的值可能存在部分常驻单例, 所以不应该设计考虑,所以我们都是第二个mark开始

    @3  点开2-3-4-5的mark.(最底下选择All VM Regions)

      

    @4 如图可以看到,每一个mark都有个存在一个VM:MALLOC_LARGE就是我们每次增量的大头,而他也就是我们内存增长的原因

      

    @5 现在,将他点开,可以看到,本次需求的内存大头是它

      

 

 

(大家别注重我的初学者app代码,写个示例真的还是勉强, 我也会加强我的OC能力的,共勉哈)

这就是Allocation在我平时工作中的使用,但,测试, 永远重在沟通.

  

    

 

以上是关于ios测试必备技能, Instruments - Allocation测试内存的主要内容,如果未能解决你的问题,请参考以下文章

一个35岁+老鸟的10年测试人生,进阶高薪测试必备这5项技能

iOS Instruments工具使用

使用 Instruments.app 从终端进行 Mac、iOS 自动化测试

在没有应用程序源代码的情况下使用 Instruments 测试 iOS 应用程序

黑盒测试人员必备技能

分析软件工程师必备技能