如何来测一款APP软件的思考与实战

目录一、功能测试1.1界面测试1.2基础功能测试1.3各项业务测试二、交叉事件测试2.1交互测试2.2交叉事件测试2.3前后台的切换三、弱网测试3.1弱网功能测试3.2无网测试3.3弱网用户体验测试3.4常用模拟弱网测试工具四、权限测试4.

目录

  • 一、功能测试
  • 1.1界面测试
  • 1.2基础功能测试
  • 1.3各项业务测试
  • 二、交叉事件测试
  • 2.1交互测试
  • 2.2交叉事件测试
  • 2.3前后台的切换
  • 三、弱网测试
  • 3.1弱网功能测试
  • 3.2无网测试
  • 3.3弱网用户体验测试
  • 3.4常用模拟弱网测试工具
  • 四、权限测试
  • 4.1主要权限
  • 4.2权限设置
  • 五、性能测试
  • 5.1响应时间
  • 5.2启动性能
  • 5.3接口性能
  • 5.4测试工具
  • 六、安全测试
  • 6.1授权验证
  • 6.2数据传输
  • 6.3通讯安全
  • 七、兼容性测试
  • 八、稳定性测试
  • 8.1测试方案
  • 8.2影响app稳定性
  • 九、其他测试场景
  • 9.1流量测试
  • 9.2耗电量测试

如何来测一款APP软件的思考与实战

最近工作当中需要整体测一遍app,需要全方面思考并且尽可能覆盖所有待测点,因为整理总结了这篇关于app测试的总体大纲

一、功能测试

1.1界面测试

1.1.1导航测试

—是否易于导航、导航是否直观
—不同页面之间的连接需要导航
—是否需要搜索引擎
—菜单、列表、窗口、对话框、按钮等等

1.1.2图形测试

—根据窗口大小自适应
—页面标签风格是否统一
—页面的图片要求整体美观有序

1.1.3内容测试

—文字内容与系统功能是否一致
—文字是否有错别字
—文字长度是否加以限制
—是否有敏感词汇、关键词、隐私等图片

1.2基础功能测试

1.2.1安装

—直接从App Store下载,检查是否支持正常安装、启动、运行、退出.
—同样的应用安装到不同版本的手机上,覆盖主流的IOS系统,检查应用是否正常
—从Android应用市场直接下载,检查是否支持正常安装、启动、运行、退出
—从第三方网址下载的安装包,检查是否支持正常安装、启动、运行、退出
—同样的应用安装在不同的Android设备上,覆盖主流的Android机型(华米OV)
—同样的应用安装在不同的Android系统上,覆盖主流的Android系统
—安装过程中,是否可以取消安装
—安装过程中,手机存储空间不足,是否安装成功还是给出提示
—安装过程中,手机本身的意外情况如:死机、断电、关机、重启
—安装过程中,外部的意外情况如:断网,弱网,网络中断后又恢复

1.2.2卸载

—手动长按删除,检查是否有卸载确认信息弹出
—卸载过程中,是否支持取消卸载
—卸载过程中,手机本身的意外情况如:死机、断电、关机、重启
—卸载过程中,外部的意外情况如:断网,弱网,网络中断后又恢复

1.2.3升级更新

—当APP有新版本更新时,会出现更新提示,以提醒用户
—当版本为非强制升级时,用户可以取消更新,老版本能正常使用。用户下次启动app时,仍能出现更新提示
—当版本为强制升级时,当给出强制更新后用户没有更新完成就退出app,下次启动app时,仍让出现强制升级提示
—当版本更新后,检查功能是否正常
—更新升级过程中的意外情况,如死机、断电、重启

1.2.4登录

—系统是否允许多次非法的登陆,是否有次数限制
—使用已经登陆的账号登陆系统是否正确处理,一号一机,互斥原则
—使用禁用的账号登陆系统是否正确处理
—登录账号和密码的错误排列组合
—原用户已不存在,再次登录
—登录超时的处理
—防止爬虫,登录时是否有图形验证码校验

1.2.5注销

—注销是否有二次提示弹窗口
—用户注销后,是否自动退出
—注销原用户,新用户系统能否正确处理
—使用错误的账号、密码、无权限的被禁用的账号进行注销

1.2.6 push

—检查push消息是否按照指定的业务规则发送
—检查不接收推送消息后,用户不会再接收到push
—检查在设置免打扰的时间段内,用户不会再接收到push;非免打扰时间段,用户可以正常接收
—push消息只针对登录用户的情况,支只对app上最后一个登录用户进行消息推送
—测试push时,需要采用真机测试

1.3各项业务测试

—每个页面的功能,与需求文档一致
—页面与页面之间的关联,数据联动
—用户界面、后台管理界面,数据库校验的一致性
—特殊操作测试:手势操作是否正常,长按、拖拽、滑动、放大

二、交叉事件测试

2.1交互测试

备注说明:该app与其他的应用交互是否正常
—调用系统相机,检查是否能够正常打开相机,并且正常拍照
—调用系统相册,检查是否能够正常打开相册,并且上传照片或视频
—调用通讯录,检查是否能够正常打开通讯录、插入记录

2.2交叉事件测试

备注说明:在app运行过程中,其他事件或者应用,中断了当前app应用的执行。跟手机固有的功能模块,进行交互使用,像音量的调节,锁屏,旋转,返回键,主菜单键,截图,闹钟,待机,插拔数据线,耳机,wifi/3G/4G/5G、蓝牙,电话,短信,相机、通讯录、低电量
—在app运行时,接听/拨打电话
—在app运行时,发送/接收短信
—在app运行时,发生网络切换等等

2.3前后台的切换

—APP切换到后台,再回到APP,检查是否停留在上一次操作页面.
—APP切换到后台,再回到APP,检查功能及应用状态是否正常,尤其是从后台切回前台数据有自动更新时.
—APP切换到后台,再回到APP,注意软件是否崩溃,自动退出.
—杀掉APP进程后,再开启APP,检查APP是否能正常启动.
—出现必须处理的提示框后,切换到后台,再切回来,检查提示框是否还存在,有时会出现应用自动跳过提示框的缺陷.
—对于有数据更新数据交换的页面,每一个页面都必须进行前后台切换、锁屏的测试,这种页面最容易出现崩溃.

三、弱网测试

3.1弱网功能测试

①使用较弱的wifi、2G、3G、4G、5G
②切换网络测试 :
wifi—>2G/3G/4G/5G
2G/3G/4G/5G—>wifi
wifi—>无网
2G/3G/4G/5G—>无网
强wifi—>弱wifi
无网—>wifi
无网—>2G/3G/4G/5G
弱wifi—>强wifi

3.2无网测试

①直接断网
②断网重连

3.3弱网用户体验测试

页面显示
—初始化从零加载应显示异常提示
—页面加载部分数据后断网,已加载数据是否正常展示,未加载部分是否符合设计
—已加载所有数据后,断网重连刷新页面是否正常显示还是覆盖已有数据
—友好加载提示:进度条
—超时机制
—重连机制

3.4常用模拟弱网测试工具

charles、
Fiddler、
IOS自带开发者工具:Network Link Conditioner、
Facebook开源的Augmented Traffic Control (ATC)工具

回到顶部

四、权限测试

备注说明:设置某个 App 是否可以获取该权限,例如是否可访问通讯录、相册、照相机等

4.1主要权限

主要包括以下权限:
—存储空间权限
—照片相机权限
—获取设备识别码权限
—通知权限
—位置权限
—麦克风权限
—通讯录权限
—网络权限
—短信读取权限

4.2权限设置

—永不
—读取、写入
—权限开、权限关、使用时主动询问、使用时被动触发授权

回到顶部

五、性能测试

5.1响应时间

—app启动:首次安装启动、冷启动、暖启动、热启动
—app交互:事件响应、内部加载速度、首屏渲染、过度渲染、帧率fps、CPU占用率、流量、耗电量
—接口性能:DNS加载时间、https的请求次数、download时间
—H5性能:cache、资源加载时间

5.2启动性能

重点是要查看启动时间
—首次安装启动:首次安装会耗费较多的时间初始化
—冷启动:进程不存在
—暖启动:进程存在,界面不存在
—首屏启动:第一屏加载完整

5.3接口性能

单个接口的数据返回时间,请参照接口文档来逐一测试,全覆盖

5.4测试工具

—IOS:通过XCODE工具查看内存消耗、CPU、GPU
—Android:android studio工具的DDMS查看

回到顶部

六、安全测试

6.1授权验证

—扣费风险:发送短信、拨打电话、自动续费
—隐私泄露风险:访问手机信息、访问联系人信息
—对App的输入有效性校验、认证、授权、敏感数据存储、数据加密等方面进行检测
—检测App的用户授权级别、数据泄漏、非法授权访问等

6.2数据传输

—将密码或其他的敏感数据输人到app时, 其不会被储存在设备中, 同时密码也不会被解码.
—输人的密码将不以明文形式进行显示.
—密码, 信用卡明细, 或其他的敏感数据将不被储存在它们预输入的位置上
—不同的app的个人身份证或密码长度必需至少在4一8 个数字长度之间

如何来测一款APP软件的思考与实战

—备份应该加密, 恢复数据应考虑恢复过程的异常通讯中断等, 数据恢复后再使用前应该经过校验
—app不应该模拟进行安全警告误导用户,利用显示误导信息欺骗用户
—在数据删除之前,app应当通知用户或者app提供一个“取消”命令的操作
—app应当有异常保护 —如果数据库中重要的数据正要被重写, 应及时告知用户

6.3通讯安全

—在运行其软件过程中, 如果有来电、SMS、EMS、MMS、蓝牙、红外等通讯或充电时, 是否能暂停程序,优先处理通信, 并在处理完毕后能正常恢复软件, 继续其原来的功能
—当创立连接时, app能够处理因为网络连接中断, 进而告诉用户连接中断的情况
—app将保持工作到通讯超时, 进而发送给用户一个错误信息指示有连接错误
—应能处理通讯延时或中断,网络异常和及时将异常情况通报用户
—App和后台服务一般都是通过HTTP来交互的,验证HTTP环境下是否正常;
—公共免费网络环境中(如:麦当劳、星巴克等)都要输入用户名和密码,通过SSL认证来访问网络,需要对使用HTTP Client的library异常作捕获处理。

回到顶部

七、兼容性测试

—兼容不同的操作系统:IOS、Andriod、HarmonyOS
—兼容不同的机型:iphone、华米VO、三星
—兼容不同的屏幕分辨率:各类手机的尺寸大小
—兼容不同的APP:与市场上主流的100款软件同时安装在一个手机上,是否会被其他app误认为病毒软件
—兼容不同的语言:同一操作系统中,不同语言设置的兼容性
—兼容不同的网络:保证wifi、3G、4G、5G、GPRS等不同网络的可连接性

回到顶部

八、稳定性测试

8.1测试方案

使用monkey测试app的稳定性:运行1000次,大概八小时,查看日志文件,检查是否出现crash、anr、exception、dump等单词

8.2影响app稳定性

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

回到顶部

九、其他测试场景

9.1流量测试

备注说明:为什么要做流量测试?如果一款app运行过程中,使用的流量过多,那么大概率不会受到用户的欢迎
—app安装完成后,首次启动时耗用的流量
—app安装包本身的空间大小,下载耗用的流量
—app升级更新时耗用的流量 —app执行业务操作引起的流量
—app在后台运行时消耗的流量

9.2耗电量测试

备注说明:为什么要做耗电量测试?如果在功能类似的情况下,app特别耗电造成设备发热严重,那么用户大概率会卸载这款应用改用其他app软件
—app运行但没有执行业务操作时的耗电量
—app运行且密集执行业务操作时的耗电量
—app在后台运行时的耗电量

如何来测一款APP软件的思考与实战

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/91462.html

(0)

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信