01安装和卸载

应用的安装和卸载在任何一款APP中都属于最基本功能。一旦出错,就属于优先级为紧要Critical的缺陷。因此APP的安装和卸载应作为一个测试点多加重视。主要关注以下几个方面:
        ▲ 应用是否可以正常安装(命令行安装(测试人员);豌豆荚/手机助手,应用商店等第三方软件安装;apk/ipa安装包安装)
        ▲ 应用是否可以在iOS和Android不同系统,版本,机型上进行安装(有的系统版本过低,应用不能适配)(安装兼容性的测试)
        ▲ 安装过程中是否能暂停,再次点击,是否继续安装

▲ 安装空间不足时如何表现,是否有相应提示,提示是否友好
        ▲ 安装过程中断网或网络不稳定的情况下,是否有相应提示
        ▲ 是否可以正常删除(卸载)应用(桌面删除;第三方软件删除;命令行删除)
        ▲ 应用卸载后所有的安装文件夹是否全部删除
        ▲ 卸载过程中出现死机,断电,重启等意外的情况,待环境恢复后是否可以继续正常卸载
        ▲ 卸载是否支持取消功能,单击取消后软件卸载情况是否正常
     移除APP

02运行

▲ 软件安装后需要检查应用是否能正常运行:

▲ APP安装完成后,是否可以正常打开,稳定运行
        ▲ APP的速度是可以让人接受,切换是否流畅
        ▲ 网络异常时,应用是否会崩溃:在请求超时的情况下,如果程序逻辑处理的不好,就有可能发生Crash。(比如黄油相机APPV4.8.2.8版本,在无网络状态下,进入照片编辑页面,选择并拖动照片时,会发生闪退)

▲ 反复使用同一个功能的时候,系统可以正常反应,而不是崩溃;

03 注册和登录  

用户注册和登录功能是很多APP产品最基础的构成之一,而主流的登录页面大致分为8种:

(1)账号密码注册登录;

(2)手机号注册登录;

(3)第三方授权登录。

(4)二维码登录;

(5)刷脸登录。

(6)指纹登陆

(7)苹果账户对已经登陆过的app的账户和密码进行记忆,登陆

(8)邮箱登陆

(9)声纹登陆

(10)蓝牙识别登陆

本文针对前两种注册登录方式进行阐述:
        3.1账号密码注册登录;
       ▲ 输入正确(符合账户密码要求的)的账号密码,可正常注册和登录

▲ 已注册用户再次注册   昵称重复也不让你注册
        ▲ 未注册用户尝试登录  
        ▲ 密码  “ **** ”   展示
        ▲ 账号输入框对最大长度和格式应有校验(比如邮箱账号需要邮箱格式等)
        ▲ 账号或密码输入错误时建议提示“账号或密码错误”,而不是“账号错误”或“密码错误”(安全方面的考虑)
        ▲ 密码是否加密传输(可抓取请求查看 Charles,fiddler)
        ▲ 密码更改后,登录时是否做到了有效数据的校验:修改前的密码失效;
        ▲ 未登录时对一些页面的操作,是否做了控制 
        ▲ 切换账号登录,检验登录的信息是否做到及时更新
        ▲ 对于多个端都进行操作时,确保数据库操作无误,且每个端可以及时看到数据的更新(数据同步,因为同一个账户,用的数据库的表是同一个表)
        ▲ 多设备同时登录同一帐号时(iOS+iOS,Android+Android,iOS+Android),检查是否将原用户剔除,弹出异地登录提示,且对一些需要登录后才能使用的页面无操作权限。  (如果APP账户切换手机重新登陆,需要验证)
        3.2手机号注册登录;
        ▲ 手机号输入框格式校验检查
        ▲ 验证短信的接收是否及时;
        ▲ 用验证码可正常登录;
        ▲ 验证码错误时,登录失败+友好提示
        ▲ 验证短信文案是否符合所测APP;
        ▲ 重复发送验证码,前一个验证码正常失效
        ▲ 频繁操作验证码发送,应有操作限制
        ▲ 验证码有效期校验(超过有效期无法登录)

04日历控件

目前很多包含购票功能的APP中都会设置日历控件方便选票,那么对日历控件的测试我们需要关注哪些呢?
        ▲ 月份和日期对应(比如2月有28天,7月31天)
        ▲ 闰年2月,应有29天
        ▲ 跨年时,年份应有增加。
   比如下图的问题就属于跨年但年份未增加的问题:

05权限设置

当前很多APP的使用依赖于位置,通知,网络等用户权限,例如杭州公交APP,在首次启动时会询问用户是否同意启用定位,通知,网络权限。针对用户权限,我们可以多关注以下几点:
        ▲ 首次启动APP询问是否同意启用权限
        ▲ 消息权限开启时,消息推送是否正常接收(iOS系统应用启用和后台关闭时都应该可以收到;Android系统在后台关闭进程后就不会推送)
        ▲ 消息权限关闭后,APP客户端接收不到消息推送。 
        ▲ 位置权限开启时,APP可定位到当前位置(比如杭州公交APP,能自动定位到用户当前位置,展示出附近的公交站)
        ▲ 位置权限关闭后,APP需定位才可用的功能,是否有提示引导用户开启权    限,比如“请打开系统设置中’隐私-定位服务’,允许“XXXX”使用您的位置”。
        ▲ 网络权限关闭时,APP是否有提示(“服务器或网络错误,请稍后重试”),是否有提示引导用户开启权限。

06  软件更新

▲ 强制更新(APP开启后要求必须更新,否则无法使用APP):

1.多次关闭和打开APP后是否正常跳出更新弹窗,且无法关闭;

2.点击更新是否正确跳转至后台配置的更新页面;
        ▲ 非强制更新(只提示一次更新):

1.可正常关闭更新弹窗。

2.重启APP更新提示按照需求再次显示,或者不再显示;

3.点击更新是否正确跳转至后台配置的更新页面;
        ▲ 取消版本更新时,老版本可以正常使用;
        ▲ APP更新后版本号应有更新;
        ▲ APP更新后新增功能和老功能可正常使用。(兼容性)
        ▲ 当有新版本时,不删除客户端的情况下,直接更新是否成功;
        ▲ 删除APP后更新(重新安装)

07网络环境

中国移动; 中国电信;  中国联通

▲ 3G,4G,wifi 网络环境下应用的各功能可正常运行;
   ▲ 网络异常时 ,数据交换失败是否会有提醒;
        ▲ 有网到无网再到有网环境时,数据是否可以自动恢复,正常加载;
        ▲ 只允许内网访问的APP,在连接到外网时是否有友好提示。

08兼容性测试

▲ 尽量覆盖该产品的主要用户(建议选取产品自己的数据,具体技术方案可以采取APP内部埋点的方法。如果是新发布的产品,可以选取竞品类产品的数据)
        ▲ 从不同系统,版本,分辨率,机型(不同厂家ROM)等纬度进行适配测试
        ▲ 通常选择在少数主流设备上执行全向的用例,在其他兼容性范围内的设备上覆盖主要功能的测试用例;
        ▲ 关注各功能界面在不同分辨率下是否存在UI展示问题(如果代码没有对不同分辨率做适配处理,就可能会出现错位,遮挡,留白,拉伸和模糊等问题)
        ▲ 基于UI自动化脚本的云测试方案(基于轻量级的UI自动化脚本,以及借助云平台大量的真机资源)

09异常测试

▲ 没有内存空间时,APP能否正确响应;
        ▲ 横竖屏切换展示;
        ▲ APP运行时网络中断;
        ▲ 反复操作某个功能(一般是比较重要的功能),不断点击和刷新,是否会出现闪退;
        ▲ APP运行时接入电话,短信,微信,或其他消息

手机APP入门—常见功能点测试(有参考)相关推荐

  1. android拍照功能编程,android实现手机App实现拍照功能示例

    实现手机App实现拍照功能结果如下 第一步: activity_takephoto.xml布局用SurfaceView xmlns:tools="http://schemas.android ...

  2. 教育行业开发手机APP需要哪些功能

    教育行业开发手机APP需要哪些功能 教育行业是当前较为热门的行业之一,也是竞争性较强的行业之一. 那么,教育培训机构怎么能在这个行业中脱颖而出呢? 这时候你就需要一款教育APP了,教育APP可以为培训 ...

  3. 手机APP常见功能点测试(入门级)

    文章目录 前言 一.安装和卸载 二.运行 三.注册和登录 四.日历控件 五.权限设置 六.软件更新 七.网络环境 八.兼容性测试 九.异常测试 总结 前言 手机上的APP的能够在应用中正常运行使用,是 ...

  4. 手机app内测都有哪些测试,怎么测试?

    随着手机应用市场发展的逐渐成熟,手机APP已经渗透到人们的吃穿住行生活,比如手机支付APP.通讯APP.各大应用软件等,关于手机APP安全性能的重要性不言而喻. 鉴于此,做好手机APP测试对于软件开发 ...

  5. MT4/MT5手机App没有警报功能怎么办?那就自己写一个

    作为一个外汇交易者,深感MT4手机App功能有限,无法满足自己更多的交易需求,于是自己开发了一款交易助手App.希望能更方便高效地进行外汇交易.目前的主要功能是外汇价格警报功能,这是MT4手机App不 ...

  6. 自学测试入门—用户注册功能的测试

    用户注册功能的测试 前言 需求描述 测试 界面测试 功能测试 输入账号功能 输入密码功能 确认密码功能 输入昵称功能 注册按钮功能 安全性测试 性能测试 兼容性测试 易用性测试 前言 大家好!我是一个 ...

  7. 手机APP测试之环境相关的测试

    际项目中,有一些缺陷我发现是和App所处的运行环境相关的,所以设计测试的时候,要多考虑这些场景,比如: 1)干扰测试 收到电话.收到短信.收到通知栏消息.无电提示框弹出.第三方安全软件告警弹出. 2) ...

  8. 使用air进行移动app开发常见功能和问题(二)

    1.  Air如何判断android.ios 平台网络连接状态? Android,使用as3原生api: [javascript] view plaincopy if(NetworkInfo.isSu ...

  9. 移动App设计常见功能点

    本篇文章本想着写技术实现来着,写着写着写成了产品.产品就产品吧,之后我再按这个大纲写技术实现.这是一个不小的工程,每个点每个平台都是一篇文章.目前未完待续,先发一下大纲再持续更新. 这是一篇枯燥无味的 ...

最新文章

  1. html的ol和ul和li,HTML 列表元素OL、UL、LI
  2. python怎么变白-python – 在热图中使反向对角线变白
  3. 量化策略研究员 - 工具篇
  4. Eclipse导入项目后中文乱码
  5. PHP MySQL 相关函数(上)
  6. jquery知识点总结(转)
  7. Atheros QCA8337交换芯片驱动开发
  8. html新的页面打开新页面,javascript如何打开新窗口?
  9. plsql 备份还原 教程_PLSQL导出还原数据库
  10. 有限元二阶拉格朗日插值函数理论
  11. mysql数据库技术思考题5_Mysql课后思考题
  12. macos支持exfat吗_你需要黑苹果吗?
  13. 【数学】-1的根号二次方等于多少?
  14. 【Vivado】 [Place 30-574] 时钟使用普通IO时的报错解决办法
  15. Android动画之Interpolator(插值器)
  16. Python竟然可以画漫画!漫画版的故宫导游图,来袭!
  17. mysql时间戳里取小时
  18. vTK颜色渲染-vtkLookupTable
  19. 【计算机网络】分层结构(OSI 7层模型、TCP/TP 4层模型、5层参考模型)
  20. Cris 的 Python日记(一):基础语法

热门文章

  1. 续集:OLT中的ONU终端数据的自动下发实现方法(光猫数据自动下发)
  2. gen10 nas linux,新的家庭服务器:MicroServer Gen10
  3. 支付宝绑定社保;微信正式上线零钱通功能|ServiceHot一周热闻
  4. 解读《阿里巴巴 Java 开发手册》背后的思考
  5. VSCode远程配置流程(详细图解)
  6. metisMenu.js动态侧边导航的实现(ajax动态渲染部分导航)
  7. 交换机如何配置SNMP(简单网络管理协议)
  8. 混战数月后,国产AI办公神器彻底学会“自己办公”了吗?
  9. uglify使用随记
  10. HUAWEI Ensp | NAT转换访问公网