App测试实战:测试内容、测试工具、测试效果_策略可采用自建单位内部众包平台(1)

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化的资料的朋友,可以戳这里获取

4、信息安全测试

0.2 App测试工具:

不单独写了。

0.3  测试效果评价

1、测试前评审、测试执行中和测试后总结

2、测试中和测试后及时总结

一、APP测试

1、常规测试

这部分和一般的软件测试时比较相似的。重点还是:

功能覆盖测试。

界面的易用性测试。 这个基本上要靠人来看。

目前常规功能测试这块,业界比较推崇的工具是:Appium。

其实对服务端也要关注:

重点就是业务响应速度。专项测试特别流畅度是关心终端性能,业务响应速度是从服务端来说的。当然这些和普通的Web测试没有太大区别。

2、专项测试(专项性能测试,也是终端特有的)

2.1 启动

启动一般分为:

冷启动:首次启动   时间一般为ms,通常要求1000ms以下,600ms为较好指标

冷启动命令:adb shell am start -W -n 包名/activity

冷启动停止:adb shell am force-stop 包名

热启动:应用切换到后台再次被唤起

热启动命令:adb shell am start -W -n 包名/activity

2.2电量

GT可以直接看到

命令(5.0以上系统才可以):

1.下载historian.py脚本,下载地址:https://github.com/google/battery-historian,后面用

2.执行步骤

1)初始化batterystats数据

adb shell dumpsys batterystats–reset

2)拔掉手机,操作app,操作完成后,重新连接手机,执行下面的命令,收集系统整体的Battery数据:

adb shell dumpsys batterystats > batterystats.txt

3)得到这些数据后,这个时候使用我们的battery-historian来生成我们可见HTML报告:

python historian.py batterystats.txt > batterystats.html

4)用google浏览器打开此文件即可

备注:阅读腾讯TMQ的《移动APP性能评测和优化》,基本思路也是分析batterystats日志,找到异常,再回头来看是代码问题还是系统设置或用户环境原因。

2.3  内存

Android用AS中的MemoryMonitor大概看看,比如内存始终在增长、内存抖动等。然后dump内存hprof文件出来用MAT分析一下,一般的Heap的内存问题基本就可以发现了。

摘抄腾讯TMQ的《移动APP性能评测和优化》中的一些方法和经验:

1)最常规也最重要的当然是MAT,分析hprof文件,获得内存消耗的排行分析,据此有针对性地来改良代码。一般地图片和大数组消耗没有释放等,可以很快发现。

2)代码中存在的内存泄漏,一般可以用代码白盒分析工具,找到疑点。常见的如Klocwork。

3)dumpsys  meminfo来观察应用的内存消耗情况。了解APP运行过程中,内存组成各部分的变化情况。

内存中存在大量的Dalvik Pss,一般就是出现碎片问题。可能原因如大循环中的临时变量等。

dex文件优化:中载入类文件,由于次序问题(按照类名字母顺序)载入,但释放时不是这个顺序,合理命名有助于次序一致,减少载入类文件带来的碎片的出现。(这个一般对大应用比较明显)

2.4 流畅度

现在一般的方法是测试FPS。用TraceView来看。但其实这种方法有它不合理的地方,比如画面静止的时候,FPS为0,但不卡。因此,腾讯TMQ的《移动APP性能评测和优化》中,采用平滑度(SM)来评估,就是评估CPU能不能处理得过来,60次每秒的处理率,能够满足说明处理得过来,不卡。

2.5  CPU使用率

这个指标其实是很有误导性的,多核和单核;多线程和单线程处理;为省电降频;等等;例如,多核移动CPU为了省电,平时只用低频的4核工作,不搞清楚原理,只是全速运行然后得到一个数值,其实是不太合适。腾讯TMQ的《移动APP性能评测和优化》中,提出Jiffies来考核,就是处理事务所用的CPU周期数。

2.6  流量统计

App的流量消耗是必须要测试的。但这个测试其实是一个伪命题,简单来说,应该是两种业务需求的测试:一个是测试网络环境优良情况下,APP业务工作时候的流量情况;一个是日常没有业务操作的守候情况下的流量消耗情况;至于弱网络情况下的,这个应该放到特殊专项测试里面去处理。其他的应该根据业务场景来分别设计。

流量测试的基本方法就是抓包,例如tcpdump;不过常用方法应该还是设置PC为代理服务器,通过安卓终端连接PC,在PC上抓包。抓包前准备工作:把其他APP能卸载的卸载掉,能关闭连接的都关闭掉后台服务,减少干扰。抓包一般转化成txt或者xml文件,然后用python等编制好的自动化处理脚本提取出来,方便分析。

2.7安装包大小

这个一般不需要单独测试了,打包后看下大小就知道了。关键的在于如何去优化,减小安装包。方法当然很多,着手的方向主要是两个,一个是代码,一个是资源。(腾讯TMQ的《移动APP性能评测和优化》第6章)

代码:1、去除废代码、冗余代码  用Lint一般可以发现;2、去掉不必要功能;3、调整代码,去掉一些method;4、使用代码混淆(文件命名等处理);

资源:1、去除冗余资源 用Lint扫描;2、资源混淆;3、压缩图片大小,不必要的可以降低图片精度,调整图片格式等;4、减少一些资源,非常偶尔用的可以用到时再去服务器下载;

最后,还可以 优化压缩算法,也许可以进一步减少安装压缩包。

3、特殊测试

3.1  兼容性测试

这个一般测试都不会有那么多真机或者平台。可以考虑使用云测平台,比如tetsin;或者自建单位内部众包平台,拉单位人员和外部一些友好用户进来,和用灰度测试的方式,预发布,在一段时间内收集问题。

3.2 弱网络测试

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化的资料的朋友,可以戳这里获取

习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!**

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化的资料的朋友,可以戳这里获取

  • 28
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值