在开发者头条上看到应该怎么做Android的兼容性测试,这里做一下记录。

摘自:https://mp.weixin.qq.com/s?__biz=MzIzNTYyOTE3NQ==&mid=2247485367&idx=1&sn=47d25a996707eea2068414d91f92d9b9&chksm=e8e578afdf92f1b9746d583b2a9fe164983be4ec531eab97f610bb55412f55af9029fbc67a06&token=1587375598&lang=zh_CN#rd

Android兼容性测试方案

1 概述

兼容性测试是指测试软件在特定的硬件平台上、不同的应用软件之间、不同的操作系统平台上、不同的网络等环境中是否能够很友好的运行的测试。

2 兼容性测试的目的

由于Android设备在品牌、系统、屏幕、硬件等碎片化较为严重,导致一些app在特定的机型上未能按预计的设计展示和运行,导致用户体验较差,不利于app的推广,影响业务发展。为此,app需在上线前进行兼容性专项测试,以便尽可能适配市面上已上市或即将上市的手机和系统。

3 影响兼容性问题的因素

3.1  硬件

1、处理器

a) CPU架构,常规手机均是arm64 ,若app要适配x86架构则需要针对性测试

b) 不同CPU厂商,尤其是小众CPU,需要特别考虑,例如华为海思、小米澎湃

2、 显卡

a) 显卡影响图形渲染和部分场景的计算,app如用到OpenGL、OpenCV、深度学习、AR、VR、AI,则需要重点考虑

3、 屏幕

a) 分辨率影响UI展示,需兼容HVGA、VGA、WVGA、FWVGA、720p、1080p屏幕分辨率,并考虑不同PPI的情况

b) 关注异形屏幕:刘海屏、水滴屏、打孔屏、全面屏

  ldpi mdpi tvdpi hdpi xhdpi xxhdpi Total
Small 0.3%         0.1% 0.4%
Normal   0.7% 0.3% 24.7% 41.9% 25.2% 92.8%
Large   2.0% 1.3% 0.4% 0.3% 0.5% 4.5%
Xlarge   1.5%   0.5% 0.3%   2.3%
Total 0.3% 4.2% 1.6% 25.6% 42.5% 25.8%  

以 7 天为周期收集的数据(截止于 2018 年 10 月 26 日)。

未显示任何分布份额不足 0.1% 的屏幕配置。

4、 传感器

a) 视app实际调用情况进行选择:如指纹模块,则需要考虑不同供应商的情况

5、 物理按键

a) 检测物理按键是否生效:音量键、电源键、拍照键

b) 与系统或其他app是否存在冲突

3.2 系统

1、 Rom

a) 不同版本的系统存在一些API、功能、权限等差异,需要结合app的功能进行适配;

b) 第三方定制rom具有一些特殊功能或权限,需要特别考虑,如MIUI

2、 编译版本

a) app编译时以最低版本设置值为标准,操作系统会拒绝将应用安装在系统版本低于标准的设备上

b) Android版本更新,新的版本会引入一些新的特性和方法,新的方法带来很多便利,但是对系统版本有要求,无法再低版本手机上运行,如果未做兼容性处理,强行运行,会导致Crash

附:Android 已发布版本和API对应表及占用率(官方数据)

Version Codename API Distribution
2.3.3 -
2.3.7
Gingerbread 10 0.2%
4.0.3 -
4.0.4
Ice Cream Sandwich 15 0.3%
4.1.x Jelly Bean 16 1.1%
4.2.x 17 1.5%
4.3 18 0.4%
4.4 KitKat 19 7.6%
5.0 Lollipop 21 3.5%
5.1 22 14.4%
6.0 Marshmallow 23 21.3%
7.0 Nougat 24 18.1%
7.1 25 10.1%
8.0 Oreo 26 14.0%
8.1 27 7.5%

7 天为周期收集的数据(截止于 2018 年 10 月 26 日)。

未显示任何分布份额不足 0.1% 的版本。

3、 浏览器内核

a) 不同浏览器内核影响web页面展示及功能

3.3 网络

1、  2G/3G/4G/5G

a) 不同网络下兼容各种类型的网络请求,关注数据请求过程及结果

2、  WiFi

a) 部分WiFi非直连网络,需要有一步认证的过程,需要特别考虑

b) 对于可能弹出广告的WiFi要做兼容处理

4 介入时机

1、产品发布前或发布后更新涉及上述 “影响兼容性问题的因素”中一个或多个点时,且面临用户数较多、使用人群较为复杂

2、产品上市后出现较多兼容性问题

5 场景选择

以下罗列的一些通用场景,并针对场景做了具体的描述,有些场景是非必测项,具体可视app功能来确定

5.1 安装卸载

该场景会涉及系统权限,可能会出现无法安装或安装后数据丢失,甚至无法启动

5.2 UI展示

受不同屏幕分辨率、PPI影响,可能会出现展示错乱、图片丢失、图片穿透等

5.3 高频交互

高频交互场景受一系列因素影响,考验整机兼容性,需特别考虑

5.4  H5页面(JS/CSS)

不同浏览器内核、浏览器标识会影响具体样式的展示及数据请求

5.5 文字输入

受输入法、虚拟键盘影响,可能会出现无法上屏,或上屏错乱

5.6 系统API交互

受不同厂家、版本的rom影响,可能会导致功能无法使用

5.7 权限相关

受不同厂家、版本的rom影响,可能会导致一些权限无法正常获取

5.8 音视频播放/录制

音视频的录制会调用麦克风(多麦)及摄像头(双摄、三摄等),可能存在不可使用或音视频出现错乱

5.9 传感器调用

可能存在传感器无法调用、权限异常或数据异常

5.10 升级覆盖

受存储权限、安全性影响,可能会出现数据丢失、无法启动等错误

5.11 三方SDK

三方SDK的架构、技术选型会影响上层正常调用

5.12 外设交互

特殊厂商的键盘、鼠标等外设可能存在冲突或无法调用

6 设备选择

1、通过用户调研、竞品分析、三方平台数据(近阶段各设备占用率分布及设备出货量、预出货量等)等确定设备选择范围;

附:

友盟设备统计:https://compass.umeng.com/trend

百度设备统计:https://mtj.baidu.com/data/mobile/device/

艾瑞移动设备分析:http://index.iresearch.com.cn/device

腾讯移动分析:https://mta.qq.com/mta/data/device

2、根据app类型,确定重点考虑的指标(通常考虑rom、分辨率、厂商),剔除重复,保留用户量较多的设备

7 测试方法

参照上文中列出的和兼容性相关的点以及产品特性,整体相关场景,并选择合适的设备进行手工活自动化方式进行测试验证(附:设备选择方式参考)

  自行协调 云测平台
优点 拥有设备的完全控制权,测试范围更广 设备丰富,执行较为简单,有完整的测试报告
缺点 需要采购,成本较大,有些特殊系统很难协调到资源 需要支出一定费用,设备不完全可控,灵活性较差

附:

常见云测平台对比报告

8 案例

7.1 某工具类APP兼容性测试简述

1、分析:通过对app的定位、使用场景、功能等分析,确定以UI切图展示、主功能、三方应用交互、网络、输入框和分辨率作为主要测试点

2、用例设计:分别针对上述测试点设计测试用例3、选择设备:由于该款app面向大众人群,所以选择从整体设备占用率来进行机型筛选

a、UI切图和分辨率的测试点选择top20机型中筛选不同的分辨率,分别包含:WVGA、VGA、HVGA等不同类型的10余种分辨率

b、主功能测试点选择top20机型

c、三方应用交互测试点选择top20机型种不同的品牌的代表性机型(占用量靠前)

d、网络测试点选择top20机型中不同基带、网络制式的代表性机型(占用量考前)

综上,可以得出兼容性测试的最终机型

4、测试执行:本案例中采用手工执行

5、测试报告:按测试点、场景、机型、结果列出

(喜欢请转发,谢谢!)

更多精彩文章:

移动端H5调试与自动化

MTP-移动测试平台

转载于:https://www.cnblogs.com/linwenbin/p/11283443.html

Android兼容性测试应该怎么做逼格更高呢?相关推荐

  1. CTS(12)---android 兼容性测试 CTS 测试过程

    android 兼容性测试 CTS 测试过程 写这个博客的时候是为了记忆,建议大家还是看官方的说明,官方说的很清楚,不想把官方大段大段的拷贝到这里,官方的的确说的很清楚: http://source. ...

  2. 心形公式表白(逼格更高一点哈哈哈)

    #代码表心意!!!! 你是否还在用简单地for循环写个程序打印心形给你的女朋友带来惊喜?那有点捞哦.本篇文章将为大家带来逼格更高的更好看的 更完美的 心形图案.废话不多说,直接上干货.由数学知识我们可 ...

  3. 【转】Android兼容性测试CTS --环境搭建、测试执行、结果分析

    原文网址:http://www.cnblogs.com/zh-ya-jing/p/4396918.html 为了确保Android应用能够在所有兼容Android的设备上正确运行,并且保持相似的用户体 ...

  4. 测试android兼容性测试工具,Android兼容性测试工具Spoon

    android分布式测试工具. 简介 android众多的版本和机型给android app测试工作带来不小的挑战.Spoon通过将case分布式地执行.将执行结果更友好地展示出来,从而简化andro ...

  5. 浏览器兼容性测试应该如何做?

    如今,市面上的浏览器种类越来越多(尤其是在平板和移动设备上),这就意味着你所测试的站点需要在这些你声称支持浏览器上都能很好的工作. 同时,主流浏览器(IE,Firefox,Chrome,Opera,S ...

  6. Android兼容性测试

    1.什么是兼容性测试? 兼容性测试是指测试软件在特定的硬件产台上.不同的应用软件之间.不同的操作系统平台上.不同的网络等环境中是否能很好地运行的测试. 2.对于移动开发,兼容性测试为什么重要? 对于i ...

  7. 4K如此成熟,8K开始布局,8K视频质量测试,对硬件要求更高!欢迎交流8K

    如今我们所有的电子产品交互第一媒介,都是通过其上显示的屏幕与用户进行互动,不管这个屏幕是简洁还是华丽,它都能让用户有一个直观的感受,能够回馈自身的信息,还可以让用户切实的通过行动来操纵这些电子产品.视 ...

  8. 【转】Android兼容性测试CTS Verifier-环境搭建、测试执行、结果分析

    原文网址:http://www.cnblogs.com/zh-ya-jing/p/4452675.html CTS Verifier算是CTS的一部分,需要手动进行,主要用于测试那些自动测试系统无法测 ...

  9. Android兼容性测试的一些坑

    还记得上次我们网易云音乐做大改版时,最后播放器界面适配每一款机型实在是个大工程,不同的系统,不同的分辨率,不同的尺寸都会有不一样的表现,为了达到完美的结果,需要花费很大的精力,于是就有了下面这一张成果 ...

  10. 【转】Android兼容性测试的一些坑

    http://qa.blog.163.com/blog/static/1901470022014817936189/ 还记得上次我们网易云音乐做大改版时,最后播放器界面适配每一款机型实在是个大工程,不 ...

最新文章

  1. 常见一致性协议(一)
  2. 【Java基础】集合
  3. LA3971组装电脑
  4. html 屏蔽蓝色电话,html – 在Chrome扩展程序中停用文字字段蓝色突出显示?
  5. 在线MSN代码(如同QQ在线咨询那种的)
  6. mysql查询 百万_MySQL百万级数据分页查询优化
  7. aspose 转pdf表格大小乱了_自己写了一个小工具类:pdf转word,没有页数和大小限制,保真!...
  8. 易观的大数据革命 分析师与机器人协同办公
  9. linux 下压缩解压命令
  10. 华为路由器dhcp配置
  11. 我身边那些资深程序员,他们是怎么突破年薪百万的?
  12. RS232和TTL电平
  13. 计算机文档怎么字符加宽间距,Word2013设置字符间距,如何设置两个字符之间的距离 -电脑资料...
  14. 【博学谷学习记录】超强总结,用心分享 | 【Lunux】Manjaro手动升级icu依赖库安装MySQL以及Navicat
  15. Linux平台被勒索软件REvil盯上
  16. CDMA移动通信网的关键技术(转)
  17. UltraISO下载安装方式
  18. C primer plus 第四章课后复习题答案笔记解释整理
  19. Java Log4j和Log4j2的区别
  20. neosmart linux 光标,重装windows系统后原有的linux系统无法进入的解决办法。

热门文章

  1. seo优化基础知识:如何优化博客文章
  2. Devexpress WPF教程
  3. 大一大学计算机应用基础,大一计算机应用基础试题
  4. 白话区块链 之 12 - 未花费事务输出 (UTXO) 是什么?
  5. 初学者c语言编程软件_初学者的C编程语言
  6. python pdf转excel
  7. JS 微信emoji表情数组
  8. 第三方短信验证码服务
  9. 【web前端特效源码】使用HTML5+CSS3制作一个会动的文字闪动动画效果~~适合初学者~超简单~ |前端开发|IT软件
  10. 安卓kali安装mysql_安卓手机安装kali教程(root篇)