APP兼容性测试(三)测试方案设计
1. 背景
App的兼容性问题可能会导致流失潜在的客户,为了尽量减少因兼容性问题导致的同类问题,进一步提高产品的质量,提升用户体验,所以进行兼容性测试,尽可能多的保证更多的用户都可以正常使用app。经过短期和持续的兼容性测试投入换取更多的合作机会和使用用户。
备注:目前主流云测平台提供的功能和服务,在多种测试设备上自动安装、卸载及运行被测APP,遍历APP的每个界面(功能、UI),检查APP是否会报错或者崩溃
备注:兼容性测试本质上属于功能测试,只不过侧重在不同的软硬件环境。
2. 目的
本兼容性测试方案的目的如下:
1)明确测试目标:app的兼容性测试
2)确定app兼容性测试的测试策略
3)确定所需的资源,并对测试的工作量进行评估
4)预估存在的风险和成本,制定应对措施
5)列出测试项目的可交付元素
3. 测试范围
APP兼容性的测试主要包含硬件设备兼容性、操作系统兼容性、分辨率兼容性、网络运营商兼容性、其他软件兼容性几个大类,下面对测试方法逐一进行详细的说明。
3.1 硬件兼容性

3.2 操作系统兼容性(ROM)

3.3 分辨率兼容性

3.4 网络运营商兼容性

3.5 与其他软件的兼容性

3.6 软件本身向前或向后兼容

3.7 数据兼容测试

4. 市场分析
主要介绍各影响因素最新的市场占有率排行。
移动互联网的产品,常见的app兼容性考虑主要有以下几个方面:硬件、操作系统及版本、分辨率、网络运营商,与其他软件的兼容性等
4.1 硬件(厂商、型号)
4.1.1 Android设备厂商分布情况
2018年4月安卓手机厂商市场份额排行榜(TOP10,国内)(来自百度移动统计)
参考:http://www.search1990.com/other/201607192019.html


4.1.1.1 华为手机销量排行榜
http://top.zol.com.cn/compositor/57/manu_613.html

4.1.1.2 OPPO手机销量排行榜

4.1.1.3 Vivo手机销量排行榜

4.1.1.4 小米手机销量排行榜

4.1.1.5 三星手机销量排行榜

4.1.1.6 金立手机销量排行榜

4.1.1.7 酷派手机销量排行榜

4.1.1.8 魅族手机销量排行榜

4.1.2 iPhone手机的机型分布情况
2018年4月,各款iPhone市场份额排行榜(国内)(来自百度移动统计)
参考:http://www.search1990.com/other/201607192019.html


4.2 操作系统、版本
2018年Q2季度全球安兔兔用户手机系统版本的分布情况
详见:https://tech.sina.com.cn/roll/2018-07-12/doc-ihfefkqq7954811.shtml

基于技术层面分析支持的最低版本为Android 4.4.0,所以增加Android 4.4.0,目前最新的操作系统已到9,所以增加Android 9.0.0

2018年第一季度国内网络访问情况抽样分析排行(来自国家互联网应急中心(简称CNCERT))
详见:https://www.sohu.com/a/232393561_354899

基于技术层面考虑IOS>=9.0,支持的机型无限制,所以IOS9以下的版本不做考虑

4.3 分辨率
参考:https://tech.sina.com.cn/roll/2018-07-12/doc-ihfefkqq7954811.shtml


4.4 网络运营商类型

详见:http://www.china-10.com/china/4861sjrj_index.html

5. 测试策略制定
主要根据app兼容性测试的影响因素、分析业务得出测试策略,并借助云测平台、Monkey工具等辅助测试

备注:
1)优先真机测试,真机测试至少要覆盖到每一个厂商(目前的测试机已满足)
2)如果型号无法覆盖全,可以使用同系列的进行测试,例如如果没有华为Mate 10,可使用华为Mate 9代替
3)云测试只能拿来做个参考,不能取代人工测试

摘自:飘丹
APP兼容性测试(三)测试方案设计的更多相关文章
- APP兼容性测试
一.APP兼容性范围以及问题 1.硬件 各个硬件结构 2.软硬件之间 硬件dll库(C++) 软硬件之间的通信,各个厂商提供的ROM 3.软件 浏览器.操作系统.数据库.手机.功能兼容性(功能修改,二 ...
- APP兼容性测试 (一) 机型选择概要
一.App兼容性问题有哪些 安装失败.启动失败.卸载失败,卸载不干净. 程序运行过程中闪退 部分控件显示不完整或者功能失效 屏幕显示异常 图片展示不全等 二.App兼容性测试的核心要点 测试软件是否能 ...
- PC、APP、H5三端测试的相同与不同
随着手机应用的不断状态,同一款产品的移动端应用市场占相较PC端也越来越大,那么app与PC端针对这些产品的测试有什么相同与不同之处呢?笔者总结如下: 首先谈一谈相同之处... 一,针对同一个系统功能的 ...
- PC、APP、H5三端测试的区别
一,针对同一个系统功能的测试,三端所测的业务流程是一样的 二,一般情况下手机端和PC端都对应一套后台服务,比如说笔者公司所开发的互联网金融平台,整个平台做了分布式服务架构,后台服务包括用户服务.交易服 ...
- 安卓手机APP兼容性测试如何有效进行?
Android App兼容性测试是一个比较重要的App评价内容,实际上兼容性测试不仅仅和测试人员相关,在开发阶段就应当着重考虑,因为兼容性问题是除了实现App本身要求的功能后,必须要关注.而且至关重要 ...
- Android APP压力测试(三)之Monkey日志自动分析脚本
Android APP压力测试(三) 之Monkey日志自动分析脚本 前言 上次说要分享Monkey日志的分析脚本,这次贴出来分享一下,废话不多说,请看正文. [目录] 1.Monkey日志分析脚本 ...
- [原创]浅谈移动互联网App兼容性测试
[原创]浅谈移动互联网App兼容性测试 今天要谈的话题,估计各位测试都有感受,移动互联网App兼容性测试,我们到底测试覆盖如何去挑选机型?具体移动App兼容性测试如何开展?是不是应引进像testin这 ...
- 06- 移动端APP兼容性测试以及APP兼容性测试手机选择与云测试技术
在开始测试APP之前,应该考虑什么问题?或者如何选择设备?多少部手机测试兼容性最佳? 兼容性测试手机数量:主测手机 1 ,2(根据人员),辅助测试手机:用于兼容性测试.(50-60台最佳,至少5-20 ...
- 手机app(功能)测试重点
在手机客户端进行查看的测试重点:1.“点击加载更多”的分页处理技术,是否有重复的数据,数据显示是否完整,到达最后一页后是否还有数据进行显示2.数据的排序方式2.界面跳转是否正确3.出现异常情况是否有提 ...
随机推荐
- 持续集成(CI):WEB自动化+Allure+Jenkins定时构建
一.allure插件安装 pytest可以通过allure集成展示优美的测试报告,同样allure也可以与Jenkins集成,并且Jenkins有构建记录,所以可以看到历史构建曲线图,通过曲线图可以清 ...
- 数据库相关知识积累(sqlserver、oracle、mysql)
数据库相关知识积累(sqlserver.oracle.mysql) 1. sqlserver :断开所有连接: (还原数据库) 1.数据库 分离 2. USE master GO ALTER DAT ...
- hive引擎的选择:tez和spark
背景 mr引擎在hive 2中将被弃用.官方推荐使用tez或spark等引擎. 选择 tez 使用有向无环图.内存式计算. spark 可以同时作为批式和流式的处理引擎,减少学习成本. 问题& ...
- java.lang.NoClassDefFoundError: org/apache/commons/collections/FastHashMap报错解决
在使用 commons-beanutils-1.9.2.jarcommons-logging-1.1.1.jar 的时候报错 java.lang.NoClassDefFoundError: org/a ...
- PDF怎么转换为CAD文件?这两种方法你的会
在日常的办公中,我们最常见的文件格式就是PDF格式的,因为PDF文件的安全性是比较高的,可以防止不小心触碰到键盘修改文件内容,而且PDF文件便于进行文件的传输.但是有时候也需要将PDF转换成CAD,那 ...
- CAD打印图纸要怎么操作?简单方法分享给你
大家日常生活中多多少少的都接触到过CAD文件,CAD图是借助CAD制图软件来进行绘制完成的.唯一的困惑就是CAD图纸的格式大多数均为dwg格式的,查看起来不是那么的方便?所以很多设计师们都会选择将图纸 ...
- JavaScript操作数据库JS操作Access数据库
avaScript操作数据库JS操作Access数据库,跟其他语言操作差不多,总结了一下习惯代码,仅供参考学习.现在在F盘有文件abc.mdf,表名为Student,一共2个字段,Id数字类型主键,s ...
- rocksdb和leveldb的bloom filter比较
memtable中的bloom filter rocksdb在memtable中添加了prefix bloom filter,就是对key取prefix,然后把这个prefix加入到bloom fil ...
- Linux 登录 MySQL 报错, 解决bash: mysql: command not found 的方法
原因:这是由于系统默认会查找/usr/bin下的命令,如果这个命令不在这个目录下,当然会找不到命令,我们需要做的就是映射一个链接到/usr/bin目录下,相当于建立一个链接文件. 首先得知道mysql ...
- golang数据结构和算法之StackLinkedList链表堆栈
会了上一个,这个就差不离了. StackLinkedList.go package StackLinkedList type Node struct { data int next *Node } t ...