手机APP测试(测试点、测试流程、功能测试)
1、功能测试
1.1 启动
APP安装完成后,是否可以正常打开,稳定运行
APP的速度是可以让人接受,切换是否流畅
网络异常时,应用是否会崩溃:在请求超时的情况下,如果程序逻辑处理的不好,就有可能发生Crash。
1.2 注册、登录
1.2.1 账号密码注册登录
正向:输入正确的账号密码、Enter键,可正常注册和登录
逆向:输入的数据前存在空格;用户名、密码错误或漏填;已注册用户;是否允许多次非法登录;是否限制次数;未注册用户登录;删除或修改后用户登录;是否有注销按钮;
逆向:密码更改后,登录时是否做到了有效数据的校验:修改前的密码失效;
逆向:未登录时对一些页面的操作,是否做了控制
逆向:密码“****”展示(安全性)
逆向:账号输入框对最大长度和格式应有校验(比如邮箱账号需要邮箱格式等)
逆向:账号或密码输入错误时建议提示“账号或密码错误”,而不是“账号错误”或“密码错误”
逆向:登陆后,页面中登陆信息是否正确;
逆向:不输入用户密码或者是重复点击“确定/取消”按钮,是否允许登陆;
逆向:支持自动登录(记住密码)的应用在进行数校验时,检查系统是否能自动登录成功并且数据操作无误
逆向:考虑无网络情况下能否正常进入免登陆状态。
逆向:检查用户主动退出登录后,下次启动APP,应停留在登录页面。
逆向:登录超时时处理是否合理
逆向:页面中是否有注销按钮;
逆向:密码是否加密传输(可抓取请求查看)
逆向:切换账号登录,检验登录的信息是否做到及时更新
逆向:对于多个端都进行操作时,确保数据库操作无误,且每个端可以及时看到数据的更新
逆向:台式机和手机的同时登录同一账号,多台手机的同时登录同一账号(检查是否将原用户剔除)
1.2.2 手机号注册登录
手机号输入框格式校验检查
验证短信的接收是否及时;
用验证码可正常登录;
验证码错误时,登录失败+友好提示
验证短信文案是否符合所测APP;
重复发送验证码,前一个验证码正常失效
频繁操作验证码发送,应有操作限制
检查对登陆超时(验证码不能用)的处理。
验证码有效期校验(超过有效期无法登录)
1.2.3 注册
表单编辑页面测试;
用户名密码长度;
注册后的提示页面;
前台注册页面和后台的管理页面数据是否一致
注册后,在后台管理系统中的页面提示以及数据库中的用户信息是否正常;
1.3 所有功能是否能正常运行
业务逻辑测试:主要测试客户端业务是否正常完成
功能点测试:主要测试客户端功能点是否可以正常使用,对具体功能点一一测试,确保每个点都能正确实现相应功能。
关联行测试:主要测试客户端与PC端的交互,客户端处理完后,PC端与客户段数据一致
1.4 应用的前后台切换是否正常
APP切换到后台,再回到APP,检查是否停留在上一次操作界面。
APP切换到后台,再回到APP,检查功能及应用状态是否正常。
APP切换到后台,再回到APP前台时,注意程序是否奔溃,功能状态是否正常,尤其是对于从后台切换回前台数据有自动更新的时候。
手机锁屏解锁后进入APP注意是否会奔溃,功能状态是否正常,尤其是对于从后台切换回前台数据有自动更新的时候。
当APP使用过程中有电话进来中断后再切换到APP,功能状态是否正常。
当杀掉APP进程后,再开启APP,APP能否正常启动。
出现必须处理的提示框后,切换到后台,再切换回来,检查提示框是否还存在,有时候会出现应用自动跳过提示框的缺陷。
对于有数据交换的页面,每个页面都必须要进行前后台切换、锁屏的测试,这种页面最容易出现奔溃的现象。
1.5 数据更新
1.6 离线浏览
在无线网络情况下可以浏览本地数据。
退出APP再开启APP时能正常浏览本地数据。
切换到后台再回到前台可以正常浏览本地数据。
锁屏后再解锁回到应用前台可以正常浏览本地数据。
手动刷新时,是否有对连接网络的提示
1.7 定位,照相机服务等等
1.8 时间测试
1.9 Push测试
检查push消息是否按照指定的业务规则发送。
检查不接收推送消息时,用户不会再接收到push消息。
如果用户设置了免打扰的时间段,检查在免打扰时间段内,用户接收不到push消息;
在非免打扰时间段内,用户能正常接收到push消息。
当push消息是针对登录用户的时候,需要检查收到的push消息与用户身份是否相符。
不打开应用时,能否接收消息
打开应用时,能否接收消息
登录与不登录情况下,接收消息是否有区别
精确推送,是否只推送给指定用户
1.10 界面测试
1.窗体
测试窗体的方法:
a,窗体大小,大小要合适,控件布局合理;
b,移动窗体.快速或慢速移动窗体,背景及窗体本身刷新必须正确;
c,缩放窗体,窗体上的控件应随窗体的大小变化而变化;
d,显示分辨率.必须在不同的分辨率的情况下测试程序的显示是否正常;
进行测试时还要注意状态栏是否显示正确;工具栏的图标执行操作是否有效,是否与菜单懒中图标显示一致;错误信息内容是否正确,无错别字,且明确等等;
2.控件
月份和日期对应(比如2月有28天,7月31天)
闰年2月,应有29天
跨年时,年份应有增加。
测试方法:
a,窗体或控件的字体和大小要一致;
b,注意全角,半角混合
c,无中英文混合.
菜单,进行测试时要注意:
a,选择菜单是否可以正常工作,并与实际执行内容一致;
b,是否有错别字:
c,快捷键是否重复;
d,热键是否重复;
e,快捷键与热键操作是否有效;
f,是否存在中英文混合;
g,菜单要与语境相关,如,不同权限的用户登陆一个应用程序,不同级别的用户可以看到不同级别的菜单并使用不同级别的功能;
h,鼠标右键快捷菜单;
g,手机拍照功能可以正常显示;
3. 文本框、按钮等控件测试
文本框的测试
如何对文本框进行测试
a,输入正常的字母或数字。
b,输入已存在的文件的名称;
c,输入超长字符。例如在“名称”框中输入超过允许边界个数的字符,假设最多255个字符,尝试输入 256个字符,检查程序能否正确处理;
d,输入默认值,空白,空格;
e,若只允许输入字母,尝试输入数字;反之;尝试输入字母;
f,利用复制,粘贴等操作强制输入程序不允许的输入数据;
g,输入特殊字符集,例如,NUL及 等;
h,输入超过文本框长度的字符或文本,检查所输入的内容是否正常显示;
i,输入不符合格式的数据,检查程序是否正常校验,如,程序要求输入年月日格式为yy/mm/dd,实际输入yyyy/mm/dd,程序应该给出错误提示
在测试过程中所用到的测试方法:
1,输入非法数据;
2,输入默认值;
3,输入特殊字符集;
4,输入使缓冲区溢出的数据;
5,输入相同的文件名;
4. 命令按钮控件的测试
a,点击按钮正确响应操作。如,单击确定,正确执行操作;单击取消,退出窗口;
b,对非法的输入或操作给出足够的提示说明,如,输入月工作天数为32时,单击”确定“后系统应提示:天数不能大于31;
c,对可能造成数据无法恢复的操作必须给出确认信息,给用户放弃选择的机会;
单选按钮控件的测试
a,一组单选按钮不能同时选中,只能选中一个。
b,逐一执行每个单选按钮的功能。分别选择了“男”“女”后,保存到数据库的数据应该相应的分别为“男”“女”;
c,一组执行同一功能的单选按钮在初始状态时必须有一个被默认选中,不能同时为空;
5. up-down控件文本框的测试
a,直接输入数字或用上下箭头控制,如,在“数目”中直接输入10,或者单击向上的箭头,使数目变为10;
b,利用上下箭头控制数字的自动循环,如,当最多数字为253时,单击向上箭头,数目自动变为1;反之亦适用;
c,直接输入超边界值,系统应该提示重新输入;
d,输入默认值,空白。如,“插入”数目为默认值,点击“确定”;或,删除默认值,使内容为空,单击“确定”进行测试;
e,输入字符。此时系统应提示输入有误。
6.组合列表框的测试
a,条目内容正确,其详细条目内容可以根据需求说明确定;
b,逐一执行列表框中每个条目的功能;
c,检查能否向组合列表框输入数据;
7. 复选框的测试
a,多个复选框可以被同时选中;
b,多个复选框可以被部分选中;
c,多个复选框可以都不被选中;
d,逐一执行每个复选框的功能;
8.列表框控件的测试
a,条目内容正确;同组合列表框类似,根据需求说明书确定列表的各项内容正确,没有丢失或错误;
b,列表框的内容较多时要使用滚动条;
c,列表框允许多选时,要分别检查shift选中条目,按ctrl选中条目和直接用鼠标选中多项条目的情况;
9.滚动条控件的测试
要注意一下几点:
a,滚动条的长度根据显示信息的长度或宽度及时变换,这样有利于用户了解显示信息的位置和百分比,如,word中浏览100页文档,浏览到50页时,滚动条位置应处于中间;
b,拖动滚动条,检查屏幕刷新情况,并查看是否有乱码;
c,单击滚动条;
d,用滚轮控制滚动条;
e,滚动条的上下按钮。
各种控件在窗体中混和使用时的测试
a,控件间的相互作用;
b,tab键的顺序,一般是从上到下,从左到右;
c,热键的使用,逐一测试;
d,enter键和esc键的使用;
在测试中,应遵循由简入繁的原则,先进行单个控件功能的测试,确保实现无误后,再进行多个控件的的功能组合的测试。
ps:密码输入框测试时要特别注意进行字母大写输入的测试。
2、UI测试
原型与效果图对比(导航测试)
图形测试
内容测试
3、兼容性测试(比如testin云测平台)
与本地以及主流APP是否兼容
不同操作系统的兼容性,是否适配
不同手机屏幕分辨率的兼容性
4、交叉测试
冲突测试,即一个功能正在执行过程中,同时另外一个事件或操作对该过程进行干扰的测试
5、安装,升级,卸载,更新
5.1 安装、卸载测试
正向:应用是否可以正常安装(命令行安装;apk/ipa安装包安装 )(有网、无网是否都正常)
正向:APP的速度是否流畅
逆向:应用是否可以在IOS和Androoid不同系统、版本、机型上进行安装
逆向:是否可以正常删除(三方软件删除;命令行删除;桌面删除)
逆向:APP安装完成后,是否可以正常打开,稳定运行
逆向:安装过程中断网或网络不稳定的情况下,是否有相应提示
逆向:网络异常时,应用是否会崩溃:在请求超时的情况下,如果程序逻辑处理的不好,就有可能发生crash
逆向:卸载过程中出现死机、重启,断点等意外情况,待环境恢复后是否可以继续正常卸载
逆向:卸载是否支持取消功能,单击取消后软件卸载情况是否正常
逆向:安装过程中是否可以暂停,再次点击,是否可以继续安装
逆向:安装空间不足时如何表现,是否有相应提示,提示是否友好
逆向:安装过程中断网或网络不稳定的情况下,是否有相应提示
逆向:安装在手机卡上或SD卡上(不同的IOS和安卓版本)
5.2 升级测试
5.3 更新测试
正向:客户端有新版本时,有更新提示
逆向:取消版本后,老版本可以正常使用
逆向:当版本为非强制升级时,用户可以取消更新,老版本能正常使用。用户在下次启动APP时,仍出现更新提示
逆向:APP更新后新增功能和老功能是否可以正常使用
逆向:当版本为强制更新升级时,用户没有做更新,退出客户端,下次启动APP时,仍出现强制升级提示(且无法关闭),点击更新是否正确调整到后台配置的更新页面
逆向:APP更新后检查版本号应该有更新
逆向:当客户端有新版本时,在本地不删除客户端的情况下,直接更新检查是否能正常更新
逆向:当客户端有新版本时,在本地不删除客户端的情况下,更新后的客户端功能是否是新版本功能
逆向:当客户端有新版本时,在本地不删除客户端的情况下,检查资源同名文件如图片是否有正常更新最新版本
逆向:升级安装意外情况的测试(如死机、断电、重启)
逆向:强制更新(APP开启后,自动更新APP,否则无法使用APP),多次关闭和打开APP后是否正常跳出更新弹窗,且无法关闭;点击更新是否正确跳转至后台配置的更新页面
逆向:非强制更新(只提示一次更新):可以正常关闭弹窗;重启APP更新提示按照需求再次显示或者不再显示;点击更新是否正确跳转至后台配置的更新页面
逆向:当有新版本时,不删除客户端的情况下,直接更新是否成功
逆向:升级安装意外情况的测试(如死机、断电、重启)
逆向:允许内网访问的APP,在连接到外网时是否有友好提示
6、用户体验测试
整体产品或服务的舒适度
7、安全测试
敏感信息是否加密,用抓包工具分析
密码是否过于检查检查
重要数据,如支付密码会不会保存到设备
同一账号在不同终端登陆,是否有提示
异地登录是否有提示
系统会否运行多次非法登陆,是否有提示
限制或者允许使用手机某些功能
注册的验证码是否重复使用,是否有超时限制
协议抓取,反编译
8、性能测试
服务器的性能测试和手机端的性能测试
比如:CPU、内存、上传流量、下载流量、电量使用情况等
极限测试
响应时间
压力测试
耗电量测试
电量流量测试
一般CPU使用率与手机端电量使用率成正比,CPU使用率不能超过10%以上,流量不要超过10M以上,可以通过android手机端一些监控软件获取数据
CPU、内存消耗
app使用占用的CPU和内存
APP启动时长
app启动需要的时间
crash率
奔溃率
内存泄露
android的程序由Java语言编写,所以android的内存管理与Java的内存管理相似。程序员通过new为对象分配内存,所有对象在java堆内分配空间,然而对象的释放时有垃圾回收器完成的。
android的虚拟机是给予寄存器的Dalvik,它的最大堆大小一般是16M,有的机器为24M。
9、手机app测试流程
需求分析->需求评审->开发人员编写排期->测试计划排期->编写测试用例->用例评审->提交基线->具体测试流程->测试通过
10、手机App测试工具
云测平台、testin、百度MTC、其他工具GT
手机APP测试(测试点、测试流程、功能测试)的更多相关文章
- 4-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案数据篇(云端电脑(Windows)安装配置数据库,使用本地Navicat for MySQL和手机APP 远程连接测试)
3-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案数据篇(安装配置数据库,使用Navicat for MySQL和手机APP 连接测试) 根据前面的教程把软件复制到云 ...
- 安卓手机APP压力monkey测试
一.Monkey概述 Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中.它向系统发送伪随机的用户事件流(如按键输入.触摸屏输入.手势输入等),实现对正在开发的应用程序进行 ...
- 案例研究:手机APP的UI设计流程
以下内容由Mockplus(http://www.mockplus.cn)团队翻译整理,仅供学习交流. UI设计——不仅仅是创造漂亮的图像. 面临的挑战 我为自己提供了一个绝佳的机会来训练我的视觉设计 ...
- 手机app(功能)测试重点
在手机客户端进行查看的测试重点:1.“点击加载更多”的分页处理技术,是否有重复的数据,数据显示是否完整,到达最后一页后是否还有数据进行显示2.数据的排序方式2.界面跳转是否正确3.出现异常情况是否有提 ...
- 3-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案数据篇(安装配置数据库,使用Navicat for MySQL和手机APP 连接测试)
2-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案数据篇(数据库简单说明) https://www.mysql.com/ 咱用安装版的 我把自己下载的放在了这里 现在 ...
- 【转载】Loadrunner实现Android / IOS 手机APP压力测试
随着手机APP用户量的增大,大的手机APP一般都需要进行压力测试,这几天用了loadrunner 12进行了手机APP的压力测试,整理了下,大家可以参考参考怎样给Andorid / IOS手机APP进 ...
- 手机APP功能测试经验分享2016.06.06
1.登录时,Android和IOS同样的操作,提示信息不一致: 2.注册等页面切换成横屏容易不兼容.把内存卡去掉,再发送图片.音频.视频容易出错. 3.Android和IOS同样的功能,同样的原型图, ...
- 银行手机APP安全评估报告【转载】
猫头鹰工作室 我不相信命运,但尊敬命运 主页 大数据 Kafka Spark Hbase Redis Flume ActiveMQ 渗透测试 方法论 Kali测试 APP安全 OWASP 脑图 Too ...
- 手机APP测试技术-整体测试流程框架
一 手机APP测试基本思路: 测试计划--测试方案--测试用例--执行: 很多小公司都没有具体的需求,项目时间也比较紧,而且流程也不是很严谨,在这样的情况之下,作为测试的我们,该怎样去对项目进行用例 ...
随机推荐
- 百度开源插件echarts介绍及如何使用
前言 如果你想要用较少的代码实现比较酷炫的数据统计表,echarts是值得你考虑的一种实现方式.官网提供了很多实例供参考:http://echarts.baidu.com/examples.html. ...
- 斯福赛特:中了.Devos勒索病毒。所有文件被加密了,如何解密解决?
什么是.devos勒索病毒? 也称为DHARMA勒索软件1,它通过加密文件并要求支付赎金以恢复对文件的访问来修改您的文件. DHARMA勒索软件通过名为.devos的新加密病毒再次活跃.该特定的病毒家 ...
- SpringBoot第十集:i18n与Webjars的应用(2020最新最易懂)
SpringBoot第十集:i18n与Webjars的应用(2020最新最易懂) 一,页面国际化 i18n(其来源是英文单词 internationalization的首末字符i和n,18为中间的字符 ...
- Innodb之全局共享内存
参考链接: https://blog.csdn.net/miyatang/article/details/54881547 https://blog.csdn.net/wyzxg/article/de ...
- 关于vm.min_free_kbytes的合理设置推测
前言 之前系统出现过几次hung住的情况,没有oom,也没有其它内存相关的信息,而linux设计就是去尽量吃满内存,然后再回收清理的机制 探讨 目前这个参数还没有找到合适的处理这个预留的参数,一般也没 ...
- C#高级编程之泛型一(泛型的引入、泛型的使用、何为泛型)
为何引入泛型 当我们要对不同类型的参数执行类似的方法时:如下所示功能打印传入参数的相关信息. class CommonMethdod { /// <summary> /// show in ...
- Redis安全学习
Redis安全学习 一直在听SSRF打Redis,那Redis到底是啥,正式的认真学习一下. 1.Redis是什么 REmote DIctionary Server(Redis) 是一个由Salvat ...
- [web安全原理分析]-SSRF漏洞入门
SSRF漏洞 SSRF漏洞 SSRF意为服务端请求伪造(Server-Side Request Forge).攻击者利用SSRF漏洞通过服务器发起伪造请求,就这样可以访问内网的数据,进行内网信息探测或 ...
- 重闯Sqli-labs关卡第三天(6-10关)
第六关(双注入GET双引号字符型注) 核心代码: 1 $id = '"'.$id.'"'; 2 $sql="SELECT * FROM users WHERE id=$i ...
- 新鲜出炉!阿里巴巴,京东,美团面经汇总,已拿offer!
最近在后台收到了很多小伙伴的私信,说自己最近想好好准备一下,在不久后的秋招跳个槽往大厂冲击一下,想要我给大家整理出一份大厂面试题好用来做好准备.之前公司有点事比较忙就没回私信.最近好一点了我也是立马联 ...