App测试技术(纯理论)

之前我们也学习过一些普通用例的设计, 如功能, 性能, 安全性, 兼容性, 易用性, 界面的测试用例设计, 之前我们讲的基本都是对于Web应用而言的, 这里我们来讲一下移动端的App测试用例设计.

功能方面

安装&卸载测试

这是只属于App的一类测试, 再平常我们使用移动设备(手机/平板)是会经常接触到这个. 主流的就有安卓的Apk安装包, 还有IOS的ipa包.

我们将测试点主要设置在这四个方面: 安装前, 安装中, 安装后, 以及特殊的重复下载.

对于安装前, 比如说我们空间不足了, 是否能给出相关提示.

对于安装中, 安装过程是否是可以取消的? 再次安装是否成功? 安装后是否可以正常运行?

安装后, 主要就是运行了~, 同时还需要面对一些环境测试.

是否可以卸载应用: (1)通过桌面卸载, (2)通过软件界面卸载 (3)通过资源管理器卸载.

然后就是要看看卸载之后的情况: 卸载后图标是否还在? 卸载的干净吗?

最后我们会再次重新安装这个软件, 尝试运行, 如果与运行不成功, 很可能是之前没有卸干净!

对于重复安装的话, 那主要就是看需求了, 一个是允许覆盖性的安装, 不影响使用, 一个是直接提示版本存在. 当然还有一些要看是需求规格说明是怎么说的.

App升级测试

升级测试当然是App的一个特殊点, 在平常的浏览器中, 上面的应用程序都是直接更新的, 而对于App来说, 这就比较复杂了.

我们分位升级前后, 升级的强制性来讲.

升级前: 当有新版本发布时, 在客户端是否有更新提示.

升级后: 我们当然要保旧更新, 首先就是要检测更新后的数据是否有丢失, 这个就主要是升级前后的一个兼容性. 然后的就是新功能是否使用正常.

非强制升级: 用户可以随时取消更新, 同时支持老版本的一个正常使用. 然后根据功能需求, 看看是否有下次上线提示App更新的功能, 对其进行测试.

 强制升级: 顾名思义, 就是你不升级我不让你用, 如果用户不升级的话, 就会强制其退出, 当用户下次使用时, 仍有这个强制升级的提示.(当然要有提示, 不能不经过用户同意, 不经人同意的软件真的很讨厌).

App登陆测试(安全) 

我们在App上面的登录形式很多样, 特殊的就有: 指纹, 二维码, 收拾, 语音, 头像识别, 一键登录.

然后上面讲的是对登录方式的一个扩充, 但重要的是对于权限的一个控制, 很简单: 登录前你能干什么, 登录后你又能干什么?

对于登录的权限, 我们有两种限制: 压根不让进(游戏等), 让进但有功能限制.

对于完全不让进的, 我们就要想办法测试一些越权的行为, 这里我提供一种, 比如登录后注销, 查看页面是否会跳到登录页面.

而对于让进的, 这也是一种主流, 先对用户介绍一下成熟的产品, 吸引读者的兴趣. 但是当用户对于页面的操作, 要进行控制, 当点击某资源/跳转某界面, 就要要求登录. 如抖音评论功能要登录.

而登录方面还有一个重要的测试就是多开情况.

 一种就是允许多开,  这一种的重中之重就是确保两个端的更新能做到及时的同步, 在这一点上也会有一些意想不到的bug, 比如我之前写的博客系统, 嗯用两个浏览器登同一个账号, 点开同一篇自己的文章, 一边删除这个文章后另一边点击更新, 这时页面就有bug.

一种就是不允许多开, 常见于游戏. 即不让两个地方登录. 处理策略也有两种: 一是提示后登录的客户端无法登录, 二是后登录的能进去, 但是前登录的被挤掉了.

最后也有一种是长时间未登录, 过期了(还是看需求哈).

 消息推送测试

在平常使用手机的时候, 当个人专注度不强时就可能被某App的消息吸引过去了, 一吸引少则几十秒, 多则几十分钟, 更多则一天, 比如是QQ, 你以为是女神给你发消息了, 结果一进去是想让你充QQ VIP.

导致你非常的嗯 ? 沮丧? 当然, 开个玩笑, 消息推送作为移动端App的一个重要部分, 我们也要做好测试.

 首先是消息推送功能设置, 我们是让它推送还是不让推送? 这个可以在系统上进行设置, 同时App也要设置这个, 推送功能开启/关闭功能.

然后就是对于用户情况进行一个分配(假设开启了推送功能.)

手机客户端未锁屏时: 当App在后台运行/前台使用, 是否可以推送, 且可点击传送到对应App的对应界面, 注: 能否跳转到对应界面也是个重点, 如果进错了用户就会出现: 我是谁, 我在哪, 我要干什么的疑问.

然后手机客户端为锁屏时, 是否可以正常推送.

然后还要根据登录状态进行测试: 退登后, 是否还会收到消息推送, 再次登录后, 是否能够显示多条推送的信息(我平板上有个原神, 基本不登, 更新时会上去领300原石)

当切换用户时, 推送的消息是否相符.

兼容性方面

这里有些部分是和Web端测试一致的, 当然也有一些是App所独有的(主要是解决适配的问题).

应用是否可在不同操作系统上使用(Andriod/IOS), 一般它们是两个不同的App, 但是功能相似. 然后就是它们是有不同版本的, 要对这个做回归测试. 我这里说一个栗子(不是尬黑).

环境: IPad AIR5, IOS17, QQ 9.0.65

问题: 分屏情况下的QQ空间显示异常行为.

步骤: 打开QQ, 分到左/右屏(占1/3),  将ipad横屏, 发现空间访客消息不存在, 再将ipad竖屏, 发现信息展示异常(说说内容占据比例过大.)

该问题到现在也未解决, 但之前是没有这个问题的(希望鹅能够解决这个问题哈哈哈).

然后就是屏幕尺寸的适应性测试, 手机品牌测试. 分辨率适配性等问题, 这里我就不展开讲了, 但肯定有这种问题.

App中断测试

想像一下这个场景, 打王者正打团呢, 突然, 很快啊, pia, 告诉你电量剩不到10%了, 游戏也给你停住了, 然后你让对面秒了, 这就很难受, 有时几秒就能决定战斗的胜负, 当然对于中断, 用户是不可忍受的, 因此这里要引入App独有的中断测试.

即App被手机行为打扰, App能否正常处理, 保证数据的正确性 -- 运行, 数据

主要核心功能在于实时的数据交换的页面做中断测试. 考察标准就是是否能够正常处理中断情况, 中断后是否能够恢复正常两个方面. (可以类比之前讲过的上下文).

常见的中断包括但不限于: 手机来电, 来短信, 闹铃, 耳机插拔, 断网, 断电, 低电量, 数据线插拔, 蓝牙连接, 前后台切换, 系统状态栏, App切换等.

这里就不展开说了, 提一下几个经典的场景:

爱奇艺播放过程中, 微信电话/电话中断:

正常: app暂停状态, 接听完电话后, 恢复正常(手动/自动)

异常: app卡死, 音视频不同步.

微信视频聊天, 低电量/电话:

正常: 聊天不中断, 关掉提示信息后, 正常通讯

异常: app卡死, 视频断开.

网络测试

不详细说明了, 直接引入分类.

测试 3G/4G/5G/wifi/热点, 网络的切换 -- 用户场景.

例如从wifi切换到4G是否有提示, 生活上的例子就比如当忙碌了一周后, 躺床上疯狂刷抖音, 把抖音都快刷爆了, 然后一开状态栏, 显示你使用了105.68G流量, 这对于一个忙碌的打工人绝对是沉重的打击, 当然有些软件就非常友好, 会提示当前用的是流量, 就非常舒服.

 然后是测试有网/无网状态下是否能正常运行.

就比如从有网->无网的情况下是否能够给出提示, 缓存功能是否正常, 无网->有网的情况下, 数据是否正常恢复, 正常加载(重连). 

弱网

关注弱网场景下是否有合理提示, 且是否有重发机制. 提交数据是否一直处理提交中, 是否有延迟, 数据交换的提醒, 数据多次提交(支付场景, 学校洗澡的那个某某校园app没有处理这个bug, 导致我洗澡充了两次钱, 望周知), 最大尝试次数.

安全性测试

之前在Web端测试时我们着重 讲了SQL注入, XSS注入, 数据传输安全等方面, 接下来介绍App中的特殊的安全性测试 --权限测试.

扣费风险: 就是在一些场景下会提示用户扣费.

隐私泄漏: 指需要用户权限才能访问用户一些私人信息(现在个人隐私泄漏真的很严重!)

开启相册/照相权限, 定位权限, 录音权限等.

注: 这些权限默认情况都是开放的, 需要用户选择.

  • 42
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值