前言

除了测试平台工具,业务测试的总结和思考同样重要,这里总结了一些Android测试知识点,可以辅助业务测试快速形成测试用例和检查点,当作抛砖引玉分享给大家。如有思考不全面的地方,欢迎大家指出来。

一. 安装启动卸载

  1. 在各个操作系统上(Android>=4.3,ios>=7.0,根据各个应用要求的最低系统)能安装成功,分别安装在手机内存或者sd卡上都能成功。app安装完成后的运行,可正常打开软件。app打开后,是否有加载状态进度提示,引导页是否正常。
  2. 启动的方式分为:首次启动,热启动,冷启动,

    1. 应用管理器强行停止后启动,
    2. 应用管理器中清缓存启动。
  3. 正常卸载
  4. 安装分为全安装,升级覆盖安装。

二.网络测试

  1. 网络类型

    • 2G(一般不测试了)
    • 3G
    • 4G
    • wifi
  2. 运营商覆盖
    目前有中国移动,中国联通,中国电信和虚拟运营商

  3. 运营商接入点覆盖
    net接入和wap接入

  4. wifi类型
    普通wifi, guest登录需要用户名密码的,路由器断网假热点,代理网络

  5. 网速模拟(可以用fiddler 连接电脑限速)

    • 弱网络状态下的功能 均在2G,3G,4G,高延时,高丢包,假热点的状态下,弱网状态的功能正常
    • 弱网络状态下的体验
      • 中间的转态例如菊花或进度条正常;
      • 异常反馈的文案正常,样式正确。
    • 弱网络状态下的响应时间
    • 强网络状态下的功能
      • 安全策略如登录ip变换,变换后是否需要有相关提示,并有相应的操作;
      • 大流量操作如应用升级,应用内html5包升级或其他大流量操作,如下载有断点续传功能,验证是否正常,若没有,是否能重新下载。
    • 无网络状态下的测试
      • 页面UI呈现是否正常,数据是否完整,toast提示是否正确。
  6. 网络切换(重点测试无网络到连接网络,以及有网络切换到无网络得情况)

    • wifi切换到2g,3g,4g;
    • 2g,3g,4g切换到wifi;
    • wifi切换到无网络;
    • 无网络切换到wifi;
    • 2g,3g,4g切换到无网络;
    • 无网络切换到2g,3g,4g;
    • 飞行模式到无网,到wifi,到2g/3g/4g之间的切换;
    • 双卡双待手机的网络切换(如果和定向省流量有关的)。
  7. 异常机制

    • 异常信息正确,容错机制正常,重连机制正常,超时机制正常。

三.输入框测试

  1. 字符型

    • 字符型输入框:英文全角,英文半角、数字、空或者空格、特殊字符如~!@#$%^&*()_+<>:"{}|`特别要注意单引号和&符号。禁止直接输入特殊字符时,使用“粘贴、拷贝”功能尝试输入。
    • 长度检查:最小长度、最大长度、最小长度-1、最大长度+1、输入超长字符比如把整个文章拷贝过去。
    • 空格检查:输入的字符间有空格、字符前有空格、字符后有空格、字符前后有空格
    • 多行文本框输入:允许回车换行、保存后再显示能够保存输入的格式、仅输入回车换行,检查能否正确保存(若能,检查保存结果,若不能,查看是否有正常提示)
    • 安全性检查:输入特殊字符串输入特殊字符串NULL,null,JavaScript,输入脚本函数
  2. 数字型
    • 边界值:最大值、最小值、最大值+1、最小值-1
    • 位数:最小位数、最大位数、最小位数-1、最大位数+1、输入超长值、输入整数
    • 异常值、特殊字符:输入空白(NULL)、空格或"~!@#$%等可能导致系统错误的字符、禁止直接输入特殊字符时,尝试使用粘贴拷贝查看是否能正常提交。输入负整数、负小数、分数、输入字母或汉字、小数、科学计数法是否支持1.0E2、全角数字与半角数字、数字与字母混合
    • 安全性检查:不能直接输入就复制然后粘贴
    • 对于必填项,先录入再删除是否可以提交成功;或者先录入错误数据再改为正确数据是否可提交成功 。
    • 录入小数然后全选,直接录入新值,是否可正常录入;(可能出现小数全选后无法直接填写新值)
  3. 日期型
    • 合法性检查:输入0月,13月,32日等,闰年2月的处理方式等,考虑开始日期与结束日期的比较,特别是在查询的时候。
    • 异常值、特殊字符:输入空格或空、输入~!@#¥%……&*(){}[]等可能导致系统错误的字符
    • 安全性检查:不能直接输入,就copy,是否数据检验出错
  4. 信息重复
    • 在一些需要命名,且名字应该唯一的信息输入重复的名字或ID,看系统有没有处理,会否报错,重名包括是否区分大小写,以及在输入内容的前后输入空格,系统是否作出正确处理。

四.兼容性测试

  1. 适配范围

    • 操作系统兼容(Android>=4.3,根据各个应用要求的最低系统)
    • 品牌rom兼容(主流厂商华为,小米,魅族,三星,OPPO,vivo)
    • 分辨率兼容(各种不同的分辨率)
    • 数据兼容(不同版本之间的数据兼容)
    • 文字或者图片需要适同分辨率的机型,如果有比较特殊的分辨率手机,那每次关于UI的测试都需要用到该手机进行适配。
  2. 适配策略
    • 选择占比大的机型优先覆盖,可以从Google Play排行,数据中心获得
    • 线上容易出问题的版本、rom优先覆盖,
    • 低版本格外留意(有的业务需要兼容2.*版本,低端机容易crash)
    • 字体大小适配

五.手机存储RAM空间测试

我们在下载时的关于ram空间,测试用例上需要考虑执行的操作有:

  1. 无SD卡时的存储提示是否有
  2. 有SD卡但无存储空间时存储提示是否有
  3. 内置SD卡,存储是否正确
  4. 外置SD卡,存储是否正确
  5. SD卡被使用时移除,存储是否正确,提示是否有
  6. 将SD卡的内容删除后操作(如,下载的内容,删除下载的文件,在下载管理对该文件操作)
  7. SD卡存储快满的情况下,使用APP是否有问题

六. 事件打断与资源冲突的中断和交互测试

当前的被测试应用被另外的应用打断当前的功能执行。在用例上主要考虑执行某些操作时的系统打断,中断测试比如:
  - 界面被手机其它事件覆盖恢复后是否有影响
  - 电话、短信、闹钟提醒、日历提醒,蓝牙提醒
  - 插拔数据线,插拔耳机
  - 待机,锁屏,音量键,置后台,强行关闭
  - 低电量提醒
应用与应用之间的调用,以及不存在应用层面的调用,但存在更低一层的资源抢夺以及公用,交互测试比如:
  - 音频资源
  - 相机视频资源
  - 页面占用, 打开多个页面窗口,然后进行切换
  - 内存占用

七. 升级相关测试

  1. 升级覆盖安装是否数据保留
  2. 用户设置项状态是否保留
  3. 新版上移除老版的功能是否正常
  4. 升级后的版本各功能正常
  5. 不同渠道包覆盖安装
  6. 版本跨度较大的覆盖安装
  7. app端有新版本时有更新提示,主动升级验证
  8. 版本为非强制升级时,用户可以取消升级,老版本正常使用,用户下次启动时,仍出现更新提示(根据客户端策略是下次还是搁多长时间)
  9. 版本为强制升级时,给出强制更新提示后用户没有更新就退出客户端,用户下次启动时,仍出现强制更新提示
  10. 升级过程中中断网络,是否支持断点续传或重新下载机制

八. 界面友好性测试

  1. 风格.样式.颜色是否协调
  2. 界面布局是否整齐、协调。例如搜索栏上面应该显示三个按钮,实际上只显示了两个或者显示折行
  3. 界面操作、标题描述是否恰当。例如应该是气泡提示的却显示成方框提示,提示语应该是密码格式错误,请重新输入,实际上却提示:账号错误,请重新输入。
  4. 操作是否符合人们的常规习惯,右上角分享菜单等
  5. 界面中各个控件是否对齐
  6. 日期控件是否可编辑
  7. 信息比较长的文本,文本框有没有提供自动垂直滚动条
  8. 是否支持Tab键,跳转顺序是否条理,键的顺序是否有条理,不乱跳
  9. 用滚动条移动页面时,页面的控件是否显示正常
  10. 页面是否有多余按钮或标签
  11. 执行风险操作时,是否有确认提示,如删除、移除、注销确认提示吗
  12. 控件的提示语描述是否正确
  13. 操作顺序是否合理

九. 旋转屏幕测试

  横竖屏切换响应G sensor后,页面需要重新加载,UI是否正确,重新加载的页面可能会发生内存无法释放的情况。同一页面横屏后再竖过来是否能和之前显示一致。在横屏情况下做一系列操作看看是否正常

十. 其他

  多点触控,同时点击2个不同的按钮,同时响应2个操作是否会引起导致页面显示异常,或者程序崩溃。
  单点连续点击是否会响应多次请求。

Android 测试点归纳总结的更多相关文章

  1. Android测试点

    记录下之前项目测试中涉及到的Android测试点: 1.APP基本功能 按照back log整理测试用例,测试中发现有需求变动.或未考虑完全,及时更新测试用例. 测试用例包括:全功能点用例+重点功能快 ...

  2. android测试点汇总

    Android的功能测试点 安装\卸载 App具体功能点 联网(默认的联网方式是什么?Wifi orSim卡?网络切换是否有相应的提示说明?飞行模式) 程序进入输入功能时,是否正常弹出键盘;键盘是否遮 ...

  3. APP测试点归纳

    1.2测试周期 测试周期可按项目的开发周期来确定测试时间,一般测试时间为两三周(即 15个工作日), 根据项目情况以及版本质量可适当缩短或延长测试时间.正式测试前先向主管确认项目排期. 1.3测试资源 ...

  4. android测试点整理

    Android的功能测试点 安装\卸载 App具体功能点 联网(默认的联网方式是什么?Wifi orSim卡? 网络切换是否有相应的提示说明? 飞行模式) 程序进入输入功能时,是否正常弹出键盘;键盘是 ...

  5. 【和小强学移动app测试2】移动终端app测试点归纳(持续更新)

      以下所有测试最后必须在真机上完整的执行 1.安装.卸载测试 在真机上的以及通过91等第三方的安装与卸载 安装在手机上还是sd卡上 2.启动app测试 3.升级测试 数字签名.升级覆盖安装.下载后手 ...

  6. 5.移动终端App测试点归纳

    以下所有测试最后必须在真机上完整的执行. 1 安装.卸载测试 1.1 在真机上.第三方软件(xy苹果助手.91.安卓助手)的安装与卸载 1.2 安装在手机卡上 或 SD卡上 (不同的IOS和安卓版本) ...

  7. 移动终端App测试点归纳

    以下所有测试最后必须在真机上完整的执行. 1 安装.卸载测试 1.1 在真机上.第三方软件(xy苹果助手.91.安卓助手)的安装与卸载 1.2 安装在手机卡上 或 SD卡上 (不同的IOS和安卓版本) ...

  8. 【重走Android之路】【路线篇(二)】知识点归纳

    [重走Android之路][路线篇(二)]知识点归纳   参考:http://blog.csdn.net/xujing81/article/details/7313507   第一阶段:Java面向对 ...

  9. Android Learning:数据存储方案归纳与总结

    前言 最近在学习<第一行android代码>和<疯狂android讲义>,我的感触是Android应用的本质其实就是数据的处理,包括数据的接收,存储,处理以及显示,我想针对这几 ...

随机推荐

  1. SQL分支语句与循环语句

    分支语句 if then elsif then else end if 举例: set serveroutput on declare num number; begin num:; then dbm ...

  2. rafy使用笔记

    1.rafy里实体字段string类型映射成数据库varchar(2000). 解决:“DomainApp“下“OnRuntimeStarting“方法里添加“DbMigrationSettings. ...

  3. 插件化框架解读之Class文件与Dex文件的结构(一)

    阿里P7移动互联网架构师进阶视频(每日更新中)免费学习请点击:https://space.bilibili.com/474380680 Class文件 Class文件是Java虚拟机定义并被其所识别的 ...

  4. java基础知识-基本概念

    1.1 java语言有哪些优点? 1.java语言为纯面向对象的语言. 2.平台无关性.java语言的优点便是“一次编译,到处执行”.编译后的程序不会被平台所约束,因此java语言有很好的移植性. 3 ...

  5. 【转】在配置静态IP的时候遇到 :bringing up interface eth0 : error unknown connection

    首先这是动态ip配置成功的结果 接下来切换到root用户来配置静态的 按照静态ip的配置方法配置好文件后(具体过程这里就不多加说明) 然后保存退出 当我们重启网卡的时候问题来了(因为本人有点强迫症,多 ...

  6. pytorch中onehot编码转为普通label标签

    label转onehot的很多,但是onehot转label的有点难找,所以就只能自己实现以下,用的topk函数,不知道有没有更好的实现 one_hot = torch.tensor([[0,0,1] ...

  7. Codeforces 364D 随机算法

    题意:给你一个序列,定义ghd为一个序列中任意n / 2个数的gcd中最大的那个,现在问这个序列的ghd为多少. 思路:居然是论文题...来自2014年国家集训队论文<随机化算法在信息学竞赛中的 ...

  8. Codeforces 1197E Culture Code DP

    题意:你有n个俄罗斯套娃,已知每个套娃的容积和体积,问有多少个子集满足以下条件: 1:这个子集是一个极大子集,即不能再添加其它的套娃到这个子集里. 2:子集的套娃之间的间隙和最小. 思路1:线段树优化 ...

  9. 笔记72 高级SSM整合

    遇到的问题: 1.进行spring mvc测试的时候报错 测试代码: package com.li.test; import com.github.pagehelper.PageInfo; impor ...

  10. pip 批量安装包

    1 python3环境已经安装好,且也配置到环境变量:这种方式是在线安装 注意不要将   pip list  也安装了了,不然可能会覆盖自己已安装的这个包 首先,在已配置好的一台机器上,将需要的包导出 ...