浅谈App测试~

落日映苍穹つ 2023-10-13 17:54 97阅读 0赞

一、 功能测试

1.登录注册

(1)账号密码登录注册
注册过程:
a.app收集账号和密码
b.app请求服务端接口提交账号
c.服务器端进行数据格式和账号唯一性验证
d.记录注册数据并返回给客户端
e.客户端接受到服务器端返回的信息成功则页面跳转,失败则返回错误编辑和提示,app显示提示

登录过程:
a.app端收集登录信息发送给服务端
b.服务端校验账号密码正确性
c.正确则返回成功,app页面登录成功
d.如有错误根据错误编码和提示错误,app展示

测试点:
a.输入正确的账号密码,可正常注册和登录
b.已注册用户再次注册
c.账号输入框对最大长度和格式应有校验(比如邮箱账号需要邮箱格式等)
d.密码是否加密传输(可抓取请求查看)
e.密码”****“展示
f.切换账号登录,检验登录的信息是否做到及时更新
g.多设备同时登录同一帐号时(iOS+iOS,Android+Android,iOS+Android),检查是否将原用户踢出
等等测试点太多

(2)验证码登录
登录过程:
a.客户端手机号码后,点击”获取验证码”按钮
b.发请求给服务端,服务端会生成一条随机验证码,一般是一串数字,再调用短信接口,把验证码发送用户的手机端。
c.用户在前台相应输入框输入验证码,提交之后,后端会对用户提交的随机码和后台原先存储的验证码信息做对比,如果两者无误差,那么用户的身份得以确认成功,就返回给app成功。

测试点:
a.输入正确的账号密码,可正常注册和登录
b.已注册用户再次注册
c.验证短信的接收是否及时;
d.用验证码可正常登录;
e.验证码错误时,是否有提示
f.频繁操作验证码发送,是否有次数限制
g.验证码有效期校验(一般有效期2分钟、5分钟)
h.重新获取验证码入口

(3)第三方登录
第三方登录原理,Oauth2.0,一般采用的是授权模式。

测试点:
a.用户从未注册,使用微信第三方登录
b.用户已有账户,使用微信第三方登录,用户使用微信扫描后,跳转到绑定账户页面,输入已注册的手机号,登录成功。
c.用户同时绑定多个第三方登录,用户绑定微信第三方登录后,再次使用微博第三方登录
d.重复绑定,比如用户账户已经绑定过一个微博账号了,再次用另一个微博账号绑定该账户。

其他需要注意的点:
(1)密码输入错误次数限制:注册登录一般都有密码输入几次会把账号锁定,再次登录的时候会增加校验流程,比如验证码校验等;
(2)常用设备维护:比如可以有三台常用设备,登录第四台的时候会有异常设备登录的逻辑,这个测试的时候需要关注
登录页面账号记忆功能,就是默认会记忆上次输入的账号
(3)有注册登录 ,就有注销用户,一个账号反复注册注销的操作。

2.安装卸载
(1)首次安装
首次安装指的是在你的设备上从来没有安装过此app,有生以来第一次安装。
a.安装成功后一般会初始化一些数据,例如某些App的首页信息
b.安装过程中会有一些系统的授权,比如位置授权,通知授权等,这些一般都是请求系统的api触发的,各种系统授 权成功后是不是可以正常使用功能.
c.还有一些需求是专门针对用户首次安装做的,比如新人红包,某些活动的弹窗,某些法律协议的弹窗等。
d.首次安装后还要检查一下安装文件的路径是否正确,Android可以在文件管理器中查看,iOS一般是需要借助工具来看的,比如ifunbox就可以看到。
e.在手机内存不够的情况下安装查看是否能安装。

(2)升级安装
用户数据、设置、状态的保留,需要特别注意的新版本已去掉的状态或设置,查看是不是正常
跳级:即隔开版本覆盖安装
逐级:覆盖安装更低版本

二、性能测试

(1)耗电量
影响因素:定位、传感器、蓝牙,其中CPU、持续定位是两个平台造成耗电的主要因素。

(2)流量
也就是常说的耗流量,影响因素有重复请求,重复下载,大图。

(3)内存
跟性能相关的概念有内存泄漏、内存占用峰值,其中通常造成性能体验问题的是内存泄漏,会导致用户手机可用内存越来越少,app越来越卡。
Xcode中有一个 Allocations工具,可以跟踪由应用程序分配的对象内存。可以用来在疑似内存泄露的地方,通过反复操作,查看某些对象内存是否有被正常的释放,从而得知是否发生内存泄露,针对性进行分析和优化。

(4)卡顿
FPS意思是每秒传输帧数,也就是我们常说的”刷新率”。每秒钟帧数愈多,所显示的画面就会愈流畅,FPS值越低就越卡顿,一般我们的APP的FPS只要保持在 50-60之间,是比较流畅的。
影响因素:通常有UI布局不合理,过度绘制;主线程执行耗时操作耗CPU;内存不足,有占用GPU较长的函数。

(5)启动时间
APP的启动时间,直接影响用户对你的APP的第一体验和判断。如果启动时间过长,不单单体验直线下降,而且可能会激发苹果的watch dog机制kill掉你的APP,那就悲剧了。
一般是分析app的启动过程,查看耗时的环节进行分析。可能是在启动的时候加载的配置太多,或者是需要拉取的接口太多,具体情况。

(6)安装包大小
(1)资源优化。删除冗余资源,资源文件最少化等。
(2)图片优化。格式的图片做压缩处理
(3)插件化。比如功能模块放在服务器上,按需下载,可以减少安装包大小。

(7)稳定性
7*24小时跑monkey, 一般是通过自动化的方式跑7*24小时,看程序会不会崩溃

三、兼容性测试

从不同系统,版本,分辨率,机型(不同厂家ROM)维度进行适配测试
(1)尽量覆盖该产品的主要用户,一般采取APP内部埋点的方法统计用户机型分布,取top10来覆盖。
(2)关注各功能界面在不同分辨率下是否存在UI展示问题比如出现错位,遮挡,留白,拉伸和模糊等问题。
(3)通常选择在少数主流设备上执行所有用例,在其他兼容性范围内的设备上覆盖主要功能的测试用例;

四、异常测试

1.接口异常,比如接口超时、接口返回值与约定不一致,App需要做异常兼容处理
2.内存不足,app能否正常响应;
3.反复操作:反复操作某个功能(一般是比较重要的功能),不断点击和刷新,是否会出现闪退
4.系统中断,像电话、短信在app运行过程中被中断了,结束后是否可以正常运行;
5.弱网:wifi、4G/3G/2G、wifi与数据流量的切换

最后:下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】

8b0171187dce405e878f274a8cdd9ec0.png

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

a3e4226c935c4242804cbdf26b571bc6.png

全部资料获取

69778fb8780b412bb6cfd6cfe695ab2f.gif

发表评论

表情:
评论列表 (有 0 条评论,97人围观)

还没有评论,来说两句吧...

相关阅读

    相关 手机APP测试(流程)

    > 小编热衷于收集整理资源,记录踩坑到爬坑的过程。希望能把自己所学,实际工作中使用的技术、学习方法、心得及踩过的一些坑,记录下来。也希望想做软件测试的你一样,通过我的分享可以少

    相关 测试方法论

    众所周知,软件质量好坏是软件成功的必要条件,一款漏洞百出的软件,是不可能获得成功的,没有任何人会喜欢这样的软件。测试在软件的开发过程中,有两类人是决定软件开发质量的,这两类人是

    相关 兼容性测试

    兼容性测试的概念 兼容性测试是一种软件测试,用于确保构建的系统/应用程序/网站与其他各种对象(如其他网络浏览器、硬件平台、用户、操作系统等)的兼容性。这种类型的测试有助于

    相关 弱网测试

    【背景】 弱网测试,属于健壮性测试的内容。随着国内移动端迅猛发展,大大增加用户碎片化使用移动端的概率。想象一下,用户在地铁里,巴士上,甚至是电梯,车库等场景使用APP,我

    相关 软件测试(上)

    软件测试在软件的生命周期中占据着重要的地位,如今软件测试已发展为一个行业. 在许多国际著名的IT企业中,软件测试人员与软件开发人员的比例都接近于1:1. 在微软,软件测试人员和

    相关 App性能优化

    前言 前段时间给公司的小伙伴们进行了关于app性能优化的技术分享,这里我稍微整理一下也给大家分享一下,关于性能优化这个话题很大,涉及面可以很广,也可以很深入,本人能力有限

    相关 Macaca自动化测试

    一、Macaca介绍 Macaca 是一套面向用户端软件的测试解决方案,提供了自动化驱动,周边工具,集成方案,旨在解决终端上的测试、自动化、性能等方面的问题。   ![2

    相关 前端测试

    ![1][] 前端测试或许被好多人误解,也许大家更加倾向于编写面向后端的测试,逻辑性强,测试方便等 聊到这导致了好多前端从来不写测试(测试全靠手点~~~)

    相关 软件测试流程

    浅谈软件测试流程 【摘要】软件测试从哪里开始到哪里结束?中间要经过哪些环节以及各环节要注意哪些事项。本文就有关问题结合个人实际工作经验进行阐述,鉴于每个环节都可以做为一个专题