APP通用case
2021-08-17 15:06:37 6 举报
AI智能生成
APP测试的通用测试用例
作者其他创作
大纲/内容
功能测试
UI 验证
主要验证页面UI有无缺失
输入框测试
光标定位位置
键盘测试
键盘调起/收起时间
是否打开输入框自动调起
点击键盘外区域,键盘是否收起
完成输入后键盘是否收起
不同输入法下的键盘调起
不通系统的键盘调起
输入框类型
字符型输入框
输入正常数据
正常的数字,字母,汉字
特殊字符,表情(是否支持)
输入符合长度的字符
大小写是否区分(如.登录密码输入框)
全角半角区分
回车换行是否支持
输入非法数据
输入超长字符或文本
输入小于最小字符数校验,如:评论
输入不符合或不支持的数据
输入空或空格
必填输入框,输入空无法保存
输入文案前或者后带空格,要自动去空格
输入特殊字符集
SQL语句
b.\n
html代码,如:<font>你好</font>
火星文
输入Javascrīpt函数:<b>Hello</b>
输入默认值
未点击输入框前有默认文案提示
点击输入区域后默认文案是否自动清除
默认文案是否能手动清除
直接使用默认值输入是否正常
复制粘贴测试
a.密码输入框不支持复制粘贴
b.普通的文本输入框支持复制和粘贴操作
输入完成确定按钮
a.输入框自带
b.键盘上确定
保存成功,数据落库校验
密码输入框
输入正常数据
正常的数字,字母,符号
输入符合长度的数字
输入非法数据
输入超过X位字符
输入小于X位字符
输入不符合或不支持的数据,如小数
未支持大小写区分(根据需求来定)
输入空或空格
必填输入框,输入空无法保存
输入文案前或者后带空格,要自动去空格
输入特殊字符集
SQL语句
\n
html代码,如:<font>你好</font>
火星文
输入默认值
未点击输入框前有默认文案提示
点击输入区域后默认文案是否自动清除
默认文案是否能手动清除
直接使用默认值输入是否正常
输入完成确定按钮
输入框自带
键盘上确定
输入框支持清除已输入的内容
不支持明文显示
不支持复制粘贴
邮箱输入框
输入正常数据
正常的数字
输入符合长度的英文,数字,字符
输入非法数据
输入超过6位数字
输入小于6位数字
输入不符合或不支持的数据
输入部分正确部分错误的字段校验
输入无@的格式
输入@前无内容的格式
输入@后无内容的格式
输入@前后均没有内容的格式
输入email中有多个@
输入@后面直接跟域名
输入@前面或后面有分隔符
输入空或空格
必填输入框,输入空无法保存
输入文案前或者后带空格,要自动去空格
输入特殊字符集
SQL语句
\n
html代码,如:<font>你好</font>
火星文
输入默认值
未点击输入框前有默认文案提示
点击输入区域后默认文案是否自动清除
默认文案是否能手动清除
直接使用默认值输入是否正常
输入完成确定按钮
输入框自带
键盘上确定
输入框支持清除已输入的内容
手机号码输入框
输入正常数据
正常的数字
输入符合长度的数字
输入非法数据
输入超过11位数字
输入小于11位数字
输入不符合或不支持的数据
输入空格+数字,空格出现在开头,中间,结尾均需要测试
输入空或空格
必填输入框,输入空无法保存
输入文案前或者后带空格,要自动去空格
输入特殊字符集
SQL语句
\n
html代码,如:<font>你好</font>
火星文
输入默认值
未点击输入框前有默认文案提示
点击输入区域后默认文案是否自动清除
默认文案是否能手动清除
直接使用默认值输入是否正常
输入完成确定按钮
输入框自带
键盘上确定
输入框支持清除已输入的内容
验证码输入框
输入正常数据
正常的数字
输入符合长度的数字
输入非法数据
输入超过6位数字
输入小于6位数字
输入不符合或不支持的数据
输入空或空格
必填输入框,输入空无法保存
输入文案前或者后带空格,要自动去空格
输入特殊字符集
SQL语句
\n
html代码,如:<font>你好</font>
火星文
输入默认值
未点击输入框前有默认文案提示
点击输入区域后默认文案是否自动清除
默认文案是否能手动清除
直接使用默认值输入是否正常
输入完成确定按钮
输入框自带
键盘上确定
输入框支持清除已输入的内容
日期型文本框
输入正常的数据
【日】输入[1,30]的数据,能正常输入
【月】输入正常[1,12]的数据,可以正常输入
【月】月输入1,3,5,7,8,10,12正常,日输入31日,可以正常输入
【年】输入非闰年,月输入2正常,日输入28,可以正常输入
【年】输入闰年,月输入2,日输入29,可以正常输入
输入异常的数据
【日】输入空,提示异常
【日】输入0,提示异常
【日】输入日期超出31,提示异常
【月】输入13,提示异常
【月】月输入4,6,9,11正常,日输入31日,提示异常
【年】输入非闰年,月输入2,日输入29,提示异常
输入格式错误的数据
输入不合法的格式如2009-9、2009-09-,系统提示异常
根据项目的情况输入2009/09/01或2009.09.01或20090901或2009-09-01,任意不满足的格式,系统提示异常
输入非日期的格式,如汉字,字母,字符,提示异常
时间型文本框
输入正确的数据
【时】输入00时,能正常输入
【时】输入23,可以正常输入
【分】输入59,可以正常输入
【分】输入00,可以正常输入
【秒】输入59,可以正常输入
【秒】输入00,可以正常输入
输入错误的数据
【时】输入24时,提示异常
【分】输入60,可以异常
【秒】输入60,提示异常
带附件上传
图片视频上传前需获取相机的权限
上传图片
图片可通过拍照获取
图片通过相册获取
图片上传数量限制
自动拼接链接
发布完成后可正常点击
输入删除
删除icon显示正常
删除是否有确认弹窗
删除已保存的数据,从库里面也会删除成功
瀑布流列表
列表UI组件测试
图片
可以点击查看大图
thumbnail缩略图的显示尺寸正确,是fit in显示的
图片未加载的默认图片显示
图片大小不同设备档位是否正确
视频
非wifi场景下是否自动播放
首页视频播放是没有声音
默认静音的情况下,是否有开启静音的按钮
视频是否显示播放进度条
视频是否支持循环播放
视频封面未加载出来时,显示默认图
视频封面图是否显示视频UI
视频thumbnail的显示尺寸正确,是fit in显示的
视频加载时显示加载动画
首页视频播放流畅,无卡顿
首页播放视频格式视频还是webp
首页播放视频大小控制2M左右
不同分辨率的设备,视频播放流畅,无卡顿和绿屏
点击跳转验证
跳转视频播放器页面
跳转其他页面
跳转返回视频是否继续播放
纯文字
文字支持中英文数字特殊字符和各种表情正常显示
文字支持换行显示,且文案超出一定长度支持收起和展开
点击支持跳转,返回后停留在原跳转的位置
图文
文案不超出一行时和图片显示正常
文案超出一行时,换行显示和图片显示正常
文案超出一定长度时,收起显示,和图片显示正常
文案产出一定长度,收起展示,图片存在多张一屏显示不下,收起显示正常
点击图片能预览大图,再次点击能恢复thumbnail的显示状态
点击能正常跳转,返回定位在原来跳转的位置,且图片和文字显示正常
数据列表
列表支持下拉刷新,加载中显示数据加载动画,能自动恢复
列表支持上滑loadmore,加载中显示加载更多的动画和UI
默认当页数据超出20以后,上滑支持加载更多
加载数据时,加载动画显示正常
没有更多数据加载时,不显示加载更多的UI
页面快速滑动时,无卡顿和异常
列表数据无网络时应显示默认无网络状态,显示重试UI,点击能重新加载数据
首页是否有多长时间自动刷新的逻辑,自动刷新后首页数据能自动置顶
数据更新
新增数据能成功插入列表最前面
删除的数据能成功从列表移除
点赞和评论数据更新时,返回首页,不用刷新接口数量和状态也能更新
软件通用功能点
登录注册
页面基本元素的操作
验证是否可以正常操作,常见的问题比如“登录页面元素点击后无法正常响应(协议、按钮)和手机按键(返回键等),页面元素点击后响应不正常”
登录用户名和密码错误时,界面有提示信息
容易出现的错别字,比如“登录界面输入错误的账号密码登录提示信息含有错别字(账号/帐号,登录/登陆,记录/纪录)”
输入框输入内容调出键盘时,“快速切换键盘上的按键容易出现闪退”, “切换到手写输入法输入内容闪退”,“调出键盘后点击返回键键盘未隐藏”,“频繁调出键盘隐藏键盘,闪现其他界面”,“注册时输入正确的邮箱点击键盘上的完成无法进行注册”等
比如“长按输入框内容”,“删除输入框内容”,部分人可能容易忽略长按这种操作,只熟悉点击操作,常见问题“长按输入框内容弹出框未本地化”,“长按输入框内容弹出菜单项不可点击”等
“邮件中含有特殊字符的正确邮箱无法注册”,“邮箱的大写敏感问题”,“已注册的邮箱再次注册”,“邮箱的长度格式验证”等
验证系统是否会出现异常,具体特殊字符比如“空格,中英文,表情符号,特殊字符,null等特殊字符串等”,常见的问题比如“输入框输入特殊字符系统闪退或提示系统错误”,“输入框输入表情符号解析成问号”等
常见的问题比如“输入框输入大量字符闪退”,“大量字符导致的遮挡”,“大量字符处理过程中切换前后台闪退”等
主要体现在“输入框长度的校验”,“验证码获取次数上限”,“验证码过期的时效性”,“邮件中激活的时效性”等
App左上角返回键,手机系统返回键跳转以及各页面的交互跳转
登陆页面跳转,返回,登陆成功及其他页面跳转。
对于支持自动登录的APP,是否能自动登录成功
注册账号大小写敏感验证
密码更改后,登录时是否做到了有效数据的校验
除了常见的手机号,还有一些虚拟的手机号验证,比如170号段,147号段等,另外还有携号转网的手机号是否可以正常注册等
比如“登录界面快速点击登录按钮多次闪退”,“注册成功自动登录后快速修改个人资料保存闪退”,“多次点击获取验证码按钮闪退”等
用户主动退出登录后,下次启动APP时,应该进入登录界面
信息不完整时的操作
例如“填写不完整信息登录注册”,“不输入任何内容登录注册”,“必填项不完整登录注册”等
已注册账号注册,未注册账号忘记密码,未注册账号登陆,注册过程中退出再次注册。
逆向思维
例如“已注册账号注册”,“未注册账号忘记密码”,“未注册账号登录”,“注册过程中返回后继续注册”等
模块间数据统一性验证
登录注册和忘记密码界面各输入框的格式规范统一等
对于IOS与android不同设备登录同一个账号时,对个人信息等数据进行操作后,确保数据数库操作无误,且IOS与android设备看到的数据都是最新的。
对于多个端都进行操作时,确保数据库操作无误,且每个端可以及时看到数据的更新
常见问题如下“杀掉App进程后重新进入App相关数据消失”等
登录注册过程中跟系统交互
主要包括返回键交互,Home键交互,Power键交互,飞行模式按键交互,网络开关切换交互等
比如“修改字体后登录注册”,“修改手机语言后登录注册”,“登录注册界面切换横竖屏操作”等
登陆时与系统的交互:锁屏,蓝牙,home,后退,横竖屏,修改字体字号。
安全性验证
常见易错点“密码明文显示”,“密码缺少明暗文切换按钮”,“通过抓包工具截取接口日志可以看到密码等敏感信息”,“获取验证码后可以通过抓包截获验证码”,“登录过程中抓包可以看到数据库表名和SQL语句”,“服务器主机ip和端口未通过nginx映射,用户能获取真实ip”,“客户端请求服务端,没有传递的安全令牌token,容易被恶意攻击”等
对于未登录时一些页面的操作,是否做了控制
验证码校验:必填项,过期,错误,无网络时获取验证码,多次获取,超过获取次数,输入验证码后,修改手机号。
密码是否加密展示,密码是否有可见按钮功能,密码框能否使用复制粘贴。
用户登录状态太久,sessionId会过期,会出现“虽然是登录状态,系统会提示用户没有登录。
必填性校验”,“错误验证码”,“过期验证码”,“无网络获取验证码”,“输入正确的验证码后修改手机号注册”,“重新获取验证码,获取验证码按钮多次点击”等
登录账号的多样性
比如“新版本旧账号的注册问题”,“首次注册账号登录后数据的情况”,“多个账号退出登录轮流切换数据处理情况”,“同一个账号存在多个角色登录的情况”等
支持一个账号只允许登录一台机器,这时,需要检查账号登录多个手机时,是否将原用户剔除,且能够给出提示信息。
切换账号登录,检验登录的信息是否做到及时更新
第三方登录的验证
主要关注“第三方账号授权时的信息正确性”,“未安装第三方App登录时的系统反应”等
第三方登录验证:账号授权,信息正确,取消授权。
日志查询
APP错误日志查看:打开 Android Studio --> Tools --> Android --> Android Device Monitor
APP闪退获取通过命令获取:adb logcat –v time >E:\x.txt
系统闪退日志获取:adb logcat > 1111.txt
文件存储
一般的增、删、改、查测试。
当表不存在时是否能自动创建,当数据库表被删除后能否再自建,数据是否还能自动从服务器中获取回来并保存。
在业务需要从服务器端取回数据保存到客户端的时候,客户端能否将数据保存到本地。
当业务需要从客户端取数据时,检查客户端数据存在时,App数据是否能自动从客户端数据中取出,还是仍然会从服务器端获取?检查客户端数据不存在时,App数据能否自动从服务器端获取到并保存到服务器端。
app使用过程中产生的临时文件存储途径、命名方式等。
app中涉及的下载操作产生的文件存储方式。
存储的文件被锁、占用。
有外置SD、内置SD卡都要考察app产生的文件是否正确。
app被安装在SD卡或者手机存储空间。
磁盘空间不足、磁盘无权限(如读,写)。
文件上传下载
文件类型验证
音频,视频文件,文本文件支持的文件类型和不支持的文件类型都需要验证
文件大小验证
上传文件大小限制,在范围内和超出大小都需要验证
文件体积为0时上传报错正常
文件名称命名
是否中英文特殊字符命名都支持
其他功能验证
附件为空时,上传按钮是否可用,是否有提示信息,提示信息是否明确
上传失败,系统是否可以正常处理
是否支持批量上传
文件上传成功后,文件名的编写是否符合用户要求的规则
文件重复下载,保存到本地是否会自动在文件名追加后缀
文件是否可以正常下载,下载过程因为某些原因突然中断之后是否可以重新下载,下载下来的文件,是否可以正常打开
下载文件的时间符合用户的预期
上传文件的时间符合用户的预期
大文件是否支持断点续传
前后台切换
切换到后台,再回到app,检查是否停留在上一次操作界面。
APP切换到后台,再回到app,检查功能及应用状态是否正常,IOS4和IOS5的版本的处
切换到后台,再回到前台时,注意程序是否崩溃,功能状态是否正常,尤其是对于从
手机锁屏解屏后进入app注意是否会崩溃,功能状态是否正常,尤其是对于从后台切换
当App使用过程中有电话进来中断后再切换到app,功能状态是否正常
当杀掉app进程后,再开启app,app能否正常启动。
出现必须处理的提示框后,切换到后台,再切换回来,检查提示框是否还存在,有时候
对于有数据交换的页面,每个页面都必需要进行前后台切换、锁屏的测试,这种页面最
行业通用功能点
身份证信息核验
需要人证核验一致
身份证上的姓名,性别,居住地址是否可以读取到
人脸比对
人脸的大小
背光 逆光
是否有活体检测,拿拍的照片验证
比对人脸的图片的大小
比对人脸的图片存储方式,是本地还是服务器
摄像头是单目还是双目的
指纹比对
指纹信息是采集还是读取身份证的比对
真实的指纹
模拟的指纹
身份证自带指纹信息
身份证不带指纹信息
文件扫描
扫描文件的类型pdf,word,图片
扫描文件完整性的验证
电子签名
输出结果效果验证,字迹是否清晰
使用体验验证,是否容易书写
稳定性验证,连续长时间使用,使用过程中是否一直都正常
压力测试,大力写字和摔是否容易损坏
用户体验测试
是否有空数据界面设计,引导用户去执行操作。
是否滥用用户引导。
是否有不可点击的效果,如:你的按钮此时处于不可用状态,那么一定要灰掉,或者拿掉按钮,否则会给用户误导。
菜单层次是否太深。
交互流程分支是否太多。
相关的选项是否离的很远。
一次是否载入太多的数据。
界面中按钮可点击范围是否适中。
标签页是否跟内容没有从属关系,当切换标签的时候,内容跟着切换。
操作应该有主次从属关系。
是否定义Back的逻辑。涉及软硬件交互时,Back键应具体定义。
是否有横屏模式的设计,应用一般需要支持横屏模式,即自适应设计。
软件安装维护
APP安装
间隔版本覆盖安装,可以安装成功
不同系统版本上安装,可以安装成功
安装过程中可以取消(杀进程),安装取消
安装空间不足时有相应提示信息
APP卸载
卸载,安装目录清理,SD卡存储数据不被清理
可通过桌面删除,也可以通过软件卸载安装
测试卸载后,删除所有的安装文件夹
卸载过程中出现死机,断电,重启等意外的情况,待环境恢复后可以正确卸载
APP升级
本地升级方式
远程升级方式
升级失败后可继续使用升级前版本
高版本往低版本升级
当客户端有新版本时,有更新提示
升级中用户数据、设置、状态的保留
跨版本升级时,可以升级成功
选择非强制更新时,可以选择暂不更新和立即更新;可以关闭弹框不显示
非强制更新弹框的提示频率,一般遇到的一天提示一次或固定时间提示一次
大版本更新不升级无法使用
当版本为强制升级版时,没有做更新,退出客户端。下次启动App时,仍出现强制升级提示
强制升级的弹窗不可以关闭
当客户端有新版本时,在本地不删除客户端的情况下,直接更新检查能正常更新
老账户升级后可以正常使用
老账户升级后的老数据未出现丢失或异常
升级时断电、重启、来电等中断,恢复后可以继续升级
兼容测试
Andoird分辨率兼容
分辨率
240x320
320x480
480x800
720x1280
1080x1920
屏幕形状
全面屏
水滴屏
挂孔屏
刘海屏
屏幕尺寸
4.7
5.0
5.5
5.7
7.9
屏幕的方向
横屏
竖屏
网络测试
1.不同网络信号
WIFI
4G
弱网
中间状态
异常反馈
无网络
页面呈现
数据完整性
客户端缓存
2.断网后缓存处理
3.网络中断重试,数据可以恢复显示和重新加载
4.无网络时默认UI显示
5.WiFi切4G或5G,流量使用提示信息
6.非WiFi场景下,图片或视频是否自动下载或播放
7.非wifi 场景下使用流量是否有弹窗提示
8.只允许内网访问的APP,在连接到外网时是否有友好提示
系统兼容
Andoird
5.0以下现在应该丢不考虑了
5.0
6.0
7.0
8.0
9.0
10.0
11.0
IOS
9
10
11
12
13
14
设备兼容测试
华为
小米
VIVO
OPPO
三星
一加
锤子
Google
魅族
NEXUS
平板
异常测试
中断测试
来电中断
来电接通
当App使用过程中有电话进来中断后再切换到App,功能状态正常
来电挂断
短信中断
接收短信
当App使用过程中短信进来中断后再切换到App,功能状态正常
查看短信
其他中断
蓝牙中断
App运行时使用蓝牙传送/接收数据。
闹钟,相机,计算器
App运行时使用相机、计算器等手机自带设备。
App运行时闹钟响起,共嗯那个状态正常
插拔数据线
APP运行时超霸数据线,功能状态正常
手机锁定
停留在程序操作界面进行锁屏,恢复后检查操作是否正常
手机断电
系统异常中断:关机、断电、重启、充电,
系统重启
APP运行时系统重启,开机回到APP,可以正常运行
页面加载
页面接口请求、界面框架加载时,通过home键、返回键、快速切换操作进行中断
APP前后台切换
对于有数据交换的页面,每个页面都必须要进行前后台切换、锁屏的测试,这种页面最容易出现崩溃
App切换到后台,再回到App,检查是否停留在上一次操作界面,功能及应用状态是否正常
停留在程序操作界面,通过home键,进行程序的前后台切换
出现必须处理的提示框后,切换到后台,再切换回来,检查提示框应消失
业务负载测试
低电量测试
稳定性测试
monkey
ANR
在Android应用程序中,如果主线程(即UI线程)在超时间内对用书输入时间没处理完,就会出现ANR弹出框,用户可以选择等待或强制关闭来杀死进程。
crash
由于空指针、内存泄漏、数组越界等编码问题,导致应用程序在移动设备上运行异常,发生闪退,导致进程被杀死。
安全测试
APP权限
首次启动APP询问是否同意启用权限
消息权限开启时,消息推送是否正常接收
消息权限关闭后,APP客户端接收不到消息推送。
位置权限开启时,APP可定位到当前位置
位置权限关闭后,APP需定位才可用的功能,是否有提示引导用户开启权限,比如“请打开系统设置中’隐私-定位服务’,允许“XXXX”使用您的位置”。
网络权限关闭时,APP是否有提示(“服务器或网络错误,请稍后重试”),是否有提示引导用户开启权限。
用户隐私
检查是否在本地保存用户密码,无论加密与否
检查敏感的隐私信息,如聊天记录、关系链、银行账号等是否进行加密
检查是否将系统文件、配置文件明文保存在外部设备上
部分需要存储到外部设备的信息,需要每次使用前都判断信息是否被篡改
文件权限
App所在的目录,其权限必须为不允许其他组成员读写
内容安全
对App的输入有效性校验、认证、授权、数据加密等方面进行检测
APP请求应使用https,且请求数据最好加密处理
性能测试
指标
响应时间/加载速度
从启动到首页完全加载出来的时间间隔
从发起跳转,到页面完全加载出来的时间间隔
启动时间
冷启动
首次启动app的时间间隔(只是启动时间,不包括页面加载)
冷启动时间不超过1.5s
热启动
非首次启动app的时间间隔(只是启动时间,不包括页面加载)
热启动不超过1s
帧率FPS
图片处理器每秒刷新的帧数,帧率60fps作为衡量标准比较合适,即要求每帧刷新时间小于16ms,可保证滑动中平滑的流畅度。
用pss来衡量是否存在内存溢出以及内存泄漏的问题
adb shell dumpsys meminfo packageName
内存占用
空闲状态:切换至后台或者启动后不做任何操作,消耗内存最少。
中强度状态:时间偏长的操作应用。
高强度状态:高强度使用应用,可以跑monkey来测试(通常用来测试内存泄漏
cpu占用率
1、应用空闲状态运行监测CPU占用率
空闲状态:应用按Home键退到后台,不再占用系统的状态(通常是灭屏半分钟后)
CPU占用率=0%
2、应用中等规格运行监测CPU占用率
中等规格:模拟用户最常见的使用场景
CPU占用率≤30%
3、应用满规格长时间正常运行监测CPU占用率
Monkey测试
CPU占用率≤30%
4、应用正常运行期间监测CPU占用率峰值
应用正常运行:打开应用进行基本操作
CPU占用率≤50%
GPU过度渲染
原色:无过渡绘制
蓝色:绘制一次 (理想状态)
绿 色:绘制二次
浅红:绘制三次 (可以优化)
深红:绘制四次 (必须优化
耗电
常见问题
页面加载是否缓慢
滑动是否流畅
内存是否在内存泄漏
流量消耗是否大
CPU占用高不高
电量消耗是否合理
极端环境下ANR是否加剧
弱网下的加载速度是否可接受
网络切换或中断时是否有异常
机型或系统适配是否会出现异常
监控分析
logcat
0 条评论
下一页