首页 > 技术文章 > app测试要点

shyzzx 2021-07-08 17:01 原文

 

功能测试

兼容性测试

安装、卸载、升级测试

交叉事件测试

PUSH测试

性能测试(针对⼿机的性能测试)

  CPU
  内存
  流量
  电量
  流畅度
  启动速度

⽤户体验测试

稳定性测试

业务功能测试

  根据测试功能去拆分功能点,再根据功能点去分析测试点。

专项测试

1、兼容性测试(专项)
系统 1、android 2、IOS
⼿机系统的版本 覆盖主流 https://tongji.baidu.com/research/app
  android 对应的主流版本 9.0 \ 8.1 \10.0的版本
  IOS 对应的主流版本 13.3.1 \ 13.4.1\ 13.3
品牌-机型 覆盖主流 https://tongji.baidu.com/research/app
  android 华为、⼩⽶、vivo、oppo
  IOS 苹果
屏幕分辨率 覆盖主流 https://tongji.baidu.com/research/app
软硬件兼容性
  与⼿机硬件兼容
  home键、电源键、⾳量调节等
  与外部硬件设备兼容
  ⽿机、蓝⽛等
  与操作系统软件兼容wlan设置、系统时间调节、LBS定位等
  与其他APP兼容
  后台在播放⾳乐时,进⼊动态⻚⾯点击动态视频的播放,系统如何处理

⽹络兼容性 2G\3G\4G\5G\WIFI

不可能去做全兼容的测试。
可以去做深度兼容测试。需要借助于第三⽅云测试平台。testin云测,云测平台有很多⼿机。
在云测平台注册账号,上传APP,给钱,拿 报告 。

2、安装卸载升级测试(专项)

app是⼀个客户端程序,客户端在使⽤前是需要安装的,因此需要测试安装、卸载、升级的操作
安装测试点:(只要⼤家能想到的点,都可以去进⾏测试,没有对错)
正常场景:
1、在不同的操作系统、不同的⼿机品版和版本上安装
2、从不同的渠道下载app进⾏测试
3、不同的安装路径,安装在⼿机的内存卡或者是SD卡(⾮必要)
异常场景:
4、安装时出现异常(关机、断⽹),恢复后能否继续安装
5、安装时存储空间不够或者内存不⾜
6、安装时点出取消再安装
7、安装之后再次覆盖安装
8、低版本覆盖安装⾼版本
卸载
正常卸载:⻓按app正常删除卸载、通过第三⽅⼯具进⾏卸载
异常卸载:app正在运⾏卸载、取消卸载、卸载关机、卸载之后数据是否保留
升级
正常升级: 从低版本升级到⾼版本,从app内部升级, 从app应⽤商城升级
异常升级:跨版本升级, 关机,内存不⾜,电量不⾜
升级提示
升级之后数据的检查

3、交叉测试

概念:交叉测试⼜称为冲突测试,或者⼲ 扰测试
交叉事件的关注点:
1、app运⾏时接打电话2、app运⾏时收发短信
3、app运⾏时收到推送通知
4、app运⾏时接到视频通话
5、app运⾏连接蓝⽛
6、app运⾏时切换⽹络、切换应⽤
7、app运⾏时旋转屏幕

4、push消息测试

消息推送的场景:
  新闻资讯类通知, 让⽤户实时获取到⾃⼰感兴趣的新闻,从⽽增加⽤户的粘性
  商城类通知, 让⽤户获取到商城的促销活动,提⾼⽤户的成交率
  流程类的通知, 让⽤户及时获取处理⼯作的内容。
推送原理: 是由服务器通过推送的服务将对应的消息推送到app端。 是⼀个⻓连接的状态。
推送服务器: 使⽤的是第三⽅的推送服务器。(极光或者信鸽)
⼿机⼚商会⾃⼰的推送服务器。
中⼩企业不会⾃⼰搭建推送服务器,⼀般使⽤的都是第三⽅的推送服务器
push消息推送的关注点
  PUSH消息推送是否按指业务规则发送.
  当PUSH推送时,检查是否按特定⽤户去进⾏推送.
  设置不接收推送消息时,确认是否正常
  推送通知的跳转是否正常
  推送消息的打开及展示
  包括app是否运⾏,都需要去关注推送消息能否收到。

3、性能测试

1、打开USB调式, 点击“系统应⽤”--“设置”, 在设置 的最下⽅选择“关于平板电脑”,在关于平板电脑中
点击“版本号”,直接提示开发者选项已打开。
2、返回到设置 菜单⻚⾯时,可以 看到 “开发者选项”这个菜单。点击进⼊到开发者选项, 需要打开
USB调试 以及指针位置 这两个选项。
3、开启超级管理员访问权限
 
  点击“系统应⽤”--“⽂件管理器”, 在⽂件管理器的左上⽅有三横杆的按钮,在弹出的⻚⾯中点击左
  下⽅的 ⻮轮 按钮,进⼊到设置⻚⾯之后,选择 “常规设置”---“访问模式”,将访问模式更改为超级
  管理员访问模式。
 
3.1 性能⼯具介绍及安装
GT随身调 android版是由腾讯公司开发的性能测试平台。直接运⾏在⼿机上⾯的。可以通过GT⼯具进⾏基础的性能测试:内存、CPU、电量、⽹络流量、流畅度,可以以绘制图表的形式
显示出指标的相关数据
GT⼯具提供了查看⽇志的功能。可以通过查看相关⽇志来分析和定位app功能异常以及crash等问题
3.2 性能⼯具使⽤
打开GT⼯具,在AUT界⾯选择被测试的app以及对应的性能指标
设置参数,进⼊到参数⻚⾯,点击右上⻆的"编辑"按钮,拖动想要测试的参数到已关注区域,⽽且
要勾选。
勾选之后,点击上⽅的红⾊ 录制按钮。
执⾏测试之前,进⼊到⽇志界⾯,开启logcat的⽇志记录功能。
如果要进⾏电量或流量的性能测试需要进⼊到插件⻚⾯进⾏设置。
返回到AUT界⾯,在上⾯点击“启动”或者“running” 来启动被测试的app
针对app进⾏相关的业务操作
操作完成之后,再进⼊到GT⼯具,查看性能参数的数据。
3.3 CPU测试
GT⼯具提供了两个CPU的监控指标:CPU和jiffffes
CPU指标就是指当前⼿机中cpu的整体使⽤率
⽤户态:cpu处于应⽤程序执⾏的时间
系统态:表示的是系统内核执⾏的时间
空闲态:表示空闲系统进程执⾏的时间
cpu使⽤率 = cpu空闲态/cpu的总的执⾏时间
jiffiffiffief:
表示的是开机以来,程序消耗的CPU时间⽚的总数
CPU问题的影响:
1、CPU使⽤⻓时间处于90%以上 (70 80 )
2、⼿机发热、耗电量增加
3、反应变慢,引起ANR(假死状态)
操作步骤:
1、打开GT⼯具,进⼊到AUT⻚⾯,选择测试的app,勾选CPU性能指标
2、进⼊到参数界⾯,配置CPU参数选项,然后进⾏勾先,点击录制
3、进⼊到⽇志界⾯,打开logcat记录⽇志
4、返回到AUT界⾯,启动app
5、针对app进⾏相关的业务操作(实际⼯作当中,操作时间会⽐较⻓)6、返回到GT⼯具界⾯,查看相关的参数数据。
3.4 内存测试
PSS和private dirty
private dirty(私有内存):
进程独占的内存,也就是进程销毁时可以回收的内存容量.
PSS(实际使⽤内存):
将跨进程的共享内存也加⼊进来,进⾏按⽐列计算PSS。就能够准确的表示进程占⽤的实际物理内存。
常⻅问题:
1、内存泄漏
内存泄漏(memory leak):当程序运⾏时申请了对应的内存空间,⽽当程序销毁时并没有释放对应的
内存空间。
2、内存溢出
内存溢出 (out of memory):是指程序在申请内存空间时,没有⾜够的内存空间供其使⽤。
内存问题产⽣的影响
1、程序实际使⽤的内存PSS会不停的增⻓
2、程序会出现闪退(crash)
内存的指标根据不同的⼿机配置、以及不同的公司,指标值是不⼀样的。
内存操作步骤:
打开GT⼯具,选择对应的被测app, 勾选内存指标(PSS和private dirty)
进⼊到参数界⾯,编辑参数,勾选对应参数,并点击录制按钮
进⼊到⽇志界⾯,开启logcat,记录⽇志信息
回到AUT界⾯,点击 启动按钮,启动被测试的app
针对启动的app进⾏相关的业务功能操作(时间⼀般也会在⼏个⼩时左右。)
操作完成,回到GT⼯具的参数界⾯,查看获取到的参数数据。
3.5 流畅度测试
GT⼯具提供了流畅度的监控指标:FPS
FPS是指⼈的⾁眼能够看到的画⾯每⼀秒帧数
效果:想要达到流畅的效果,⾄少每秒的帧数要达到24帧
每秒和帧数越⾼流畅度就越好
如果想要达到最佳的流畅度需要达到每秒60帧
当⻚⾯静⽌不动时,FPS的值显示的是0
测试时间:15-30分钟
操作步骤:1、打开GT⼯具,进⼊到AUT界⾯,选择被测试的app
2、进⼊到参数界⾯,点击编辑拖动FPS参数到已关注参数中,勾选之后,点击录制
3、进⼊到⽇志界⾯,开启logcat记录⽇志信息
4、返回到AUT界⾯,点击启动,打开被测试的app
5、针对被测app进⾏相关的业务操作
6、返回到参数界⾯查看参数数据
3.6 流量测试
GT⼯具⾥⾯提供了⼀个监控流量的指标:NET
流量:⼿机在访问⽹络过程当所产⽣的上传和下载的数据(报⽂)就称为流量
常⽤流量测试⽅法
抓包测试法
通过抓包⼯具将所有的⽹络应⽤数据包,全部抓取到并保存到某个⽂件中,进⾏分析的过程 。
wireshark所有协议的报⽂,sniffffer也可以抓所有的报⽂,tcpdump命令可以抓所有的报⽂
统计测试法
获取的是某⼀个应⽤程序获取的数据报⽂,统计出对应的流量。
GT⼯具测试步骤:
打开GT进⼊到AUT界⾯,选择被测试的app,勾选NET指标
进⼊到参数界⾯,点击编辑,拖选 NET参数,勾选并点击录制
进⼊到⽇志界⾯,开启Logcat记录⽇志信息
进⼊到插件界⾯,选择“抓包”,再点击“开始”
返回到AUT界⾯,点击“启动”,启动测试app
针对启动的app进⾏相关业务操作
返回到参数界⾯,停⽌录制,再返回到插件界⾯,点击“抓包”,再点“停⽌”
流量的优化:
数据压缩 在HTTP协议中可以通过此字段将数据进⾏压缩,减少数据容量。content-encoding:
gzip
不同的数据格式的采⽤ json lxml 数据格式
控制访问的频次 通过异步加载的⽅式来加载数据。
只获取必要的数据
缓存机制
懒加载 将多个图⽚放在同⼀张图⽚⾥⾯,⼀起加载。
3.7 电量测试
GT⼯具当中提供了电量的监控指标:电流、电压,电量跟温度
就是指移动设备电量消耗快慢的⼀种测试⽅法。⼀般⽤平均电流来衡量电量的消耗速度。
常⻅的耗电场景:定位,GPS
⽹络传输
蓝⽛
屏幕的亮度
GT⼯具只能特定类型的机型进⾏电量的测试。
可换其他性能测试⼯具进测试,也可以使⽤对⽐⽅式进⾏测试(拿 同类型的产品,在同样的⼿同样的场
景下进⾏对⽐测试。)
3.8 ⽤户体验测试
⽤户体验主要是跟app的界⾯有关。
UI界⾯测试 包括界⾯的设计、界⾯元素框架、结构、颜⾊、布局、图⽚、按钮选中的⼀些效、⽂
字的内容。
易⽤性测试 菜单的层次、完成业务操作的步骤是否过多, 点击按钮的范围 是不是合适,包括返回
键的操作
横竖屏测试 横屏之后,⻚在的表格是不是能正常的显示。
关注⼿机上的其他辅助功能 放⼤字体
如何测试app?
⾸先了解需求。
测试的过程 :
测试功能
兼容性测试
安装、卸载、升级测试
交叉事件测试
⽤户体验测试
PUSH测试
性能测试(CPU、内存、电量、流量、流畅度、启动时间)
稳定性测试
当对app进⾏了充分
的测试之后,主可以编写测试报告 ,发布app到线上了。
app的发布,打包上传到各⼤应⽤商城。
测试⼈员也需要关注,关注的是app线上的BUG。
运维需要关注的app的线上环境

推荐阅读