一、App兼容性问题有哪些

  1. 安装失败、启动失败、卸载失败,卸载不干净、
  2. 程序运行过程中闪退
  3. 部分控件显示不完整或者功能失效
  4. 屏幕显示异常
  5. 图片展示不全等

二、App兼容性测试的核心要点

  1. 测试软件是否能在不同的操作系统平台上兼容,或测试软件是否能在同一操作平台的不同版本上兼容;
  2. 软件本身能否向前或向后兼容;
  3. 测试软件能否与其他相关的软件兼容;
  4. 数据兼容性测试,主要是指数据能否共享等。

三、App兼容性测试的作用

  1. 兼容性测试能够进一步提高产品的质量;
  2. 兼容性测试能使软件与尽可能多的其他软件“和平共处”,尽可能达到平台无关性;
  3. 兼容性测试能尽可能的保证软件存在的价值,它是衡量一个软件质量的重要指标;
  4. 兼容性测试能使软件产品的市场更广阔。

四、App兼容性测试的基本要点

APP兼容性的测试主要包含:

  1. 硬件设备兼容性
  2. 操作系统兼容性
  3. 分辨率兼容性
  4. 网络运营商兼容性
  5. 软件本身向前或向后兼容
  6. 与其他软件的兼容性等

五、App兼容性测试云测平台

平台类型,使用人数从小到大排列:云测 ----> 内测 ----> 众测

测试平台:百度云平台、testin、TA云测试平台、腾讯WeTest

六、机型选择策略

(1)确定选择机型的维度

首先考虑用户活跃程度、分辨率、操作系统版本等因素,建议选择15~20 款机型。

  1. 通过用户活跃程度,确定一个大的范围,以保证我们选择的机型,就是在实际应用当中主要用户群使用的机型,建议使用友盟埋点分析。
  2. 考虑目前市场当中手机的主流分辨率,这里可以将分辨率分为几个级别(一种常见的分法是720P,1080P,2K和4K),我们选择的机型能够覆盖所有级别即可;
  3. 系统版本的不断更新,可能导致之前可以正常使用的软件功能出现异常,我们要保证软件可以对一个系列的操作系统有较好的兼容性,所以有必要考虑主要用户群使用了哪些版本的系统;
  4. 最后建议大家将用户反馈问题较多的部分机型也纳入兼容测试的列表中,毕竟经常出现问题的地方就是需要我们更加关注的。

(2)过滤主要数据,形成兼容列表

  1. 对于用户活跃度的统计,我们可以从产品或者数据组同事那里申请一份数据表,比如使用产品人数(次数)统计Top50 - 100 机型;
  2. 得到上面的基础数据后,我们要做一些数据处理——将相同品牌进行合并,在分配机型占比时,可以参考数据中该品牌所占比例——比如OPPO、华为等明显比例较高,可以多分配一些份额,而一加、魅族等占比相对较少的品牌可以少分配一些;
  3. 在同一个手机品牌下,可以同时参考分辨率、操作系统,机型的价位等来筛选,比如某品牌的手机在数据中共有10条,
    • a) 我们可以对非主流的分辨率(比如当前960*540、1280*720),每个类型只选择一款,而其他的都选择主流分辨率类型
    • b) 筛选操作系统也类似,可以通过一些网络数据平台,获取到当前使用率最高的操作系统版本数据,比如这里我们通过友盟数据平台(https://compass.umeng.com/trend),查看最近一个月的Android操作系统大(小)版本市场占比,如下图所示

(图片来源于友盟数据平台)

    • c) 列入价位主要是希望将不同手机性能(如CPU)对于软件的影响加入考虑范围

到现在,我们基本上已经形成了一份机型选择的表格,其中应该包括品牌、机型、分辨率(也可以加入屏幕尺寸等)、操作系统。可以参考下表。

最后,我们可以根据自己项目组的要求或者待测试app本身的特点,对于上表做一些微调。比如有些测试机可能目前项目组中还没有,需要申请或从其他组中借用,这些在实际执行测试方案时都是需要考虑的。

APP兼容性测试 (一) 机型选择概要的更多相关文章

  1. 06- 移动端APP兼容性测试以及APP兼容性测试手机选择与云测试技术

    在开始测试APP之前,应该考虑什么问题?或者如何选择设备?多少部手机测试兼容性最佳? 兼容性测试手机数量:主测手机 1 ,2(根据人员),辅助测试手机:用于兼容性测试.(50-60台最佳,至少5-20 ...

  2. [原创]浅谈移动互联网App兼容性测试

    [原创]浅谈移动互联网App兼容性测试 今天要谈的话题,估计各位测试都有感受,移动互联网App兼容性测试,我们到底测试覆盖如何去挑选机型?具体移动App兼容性测试如何开展?是不是应引进像testin这 ...

  3. APP兼容性测试(三)测试方案设计

    1.  背景 App的兼容性问题可能会导致流失潜在的客户,为了尽量减少因兼容性问题导致的同类问题,进一步提高产品的质量,提升用户体验,所以进行兼容性测试,尽可能多的保证更多的用户都可以正常使用app. ...

  4. 安卓手机APP兼容性测试如何有效进行?

    Android App兼容性测试是一个比较重要的App评价内容,实际上兼容性测试不仅仅和测试人员相关,在开发阶段就应当着重考虑,因为兼容性问题是除了实现App本身要求的功能后,必须要关注.而且至关重要 ...

  5. app兼容性测试的几种方案

    1.统计自己的应用被使用的数据 通过友盟或Flurry等在应用嵌入,得到应用在哪些机型上被安装了,排名前十的就是测试的重点机型 2.可参考兼容性测试平台的测试结果 比如Testin或百度的MTC平台, ...

  6. APP兼容性测试

    一.APP兼容性范围以及问题 1.硬件 各个硬件结构 2.软硬件之间 硬件dll库(C++) 软硬件之间的通信,各个厂商提供的ROM 3.软件 浏览器.操作系统.数据库.手机.功能兼容性(功能修改,二 ...

  7. 手机APP兼容性测试

    兼容性测试方案 兼容性问题 屏幕分辨率兼容性问题 软件(iOS和Android系统版本及不同厂家的定制ROM)兼容性问题 硬件(不同的CPU.内存大小等等)兼容性问题 网络(2G/3G/4G/WIFI ...

  8. Web浏览器兼容性测试工具如何选择

    对于前端开发工程师来说,网页兼容性测试工程师而言,确保代码在各种主流浏览器的各个版本中都能正常工作是件很费时的事情,幸运的是,有很多优秀的工具可以帮助测试浏览器的兼容性,领测软件测试网向您推荐12款很 ...

  9. APP兼容性测试 (二) 最新 iPhone 机型分辨率总结

    iPhone手机发布时间及iOS发布 iPhone是美国苹果公司研发的智能手机系列,搭载苹果公司研发的iOS操作系统. 第一代iPhone于2007年1月9日由苹果公司前首席执行官史蒂夫·乔布斯发布, ...

随机推荐

  1. [转]在.NET Core 2.x中将多个强类型设置实例与命名选项一起使用

    自1.0版之前,ASP.NET Core已使用“ 选项”模式配置强类型设置对象.从那时起,该功能获得了更多功能.例如,引入了ASP.NET Core 1.1 IOptionsSnapshot,它允许您 ...

  2. Java8新特性——集合底层源码实现的改变

    ArrayList 源码分析: jdk7: ArrayList list = new ArrayList();//初始化一个长度为10的Object[] elementData sysout(list ...

  3. Z从壹开始前后端分离【 .NET Core2.0/3.0 +Vue2.0 】框架之十 || AOP面向切面编程浅解析:简单日志记录 + 服务切面缓存

    本文梯子 本文3.0版本文章 代码已上传Github+Gitee,文末有地址 大神反馈: 零.今天完成的深红色部分 一.AOP 之 实现日志记录(服务层) 1.定义服务接口与实现类 2.在API层中添 ...

  4. JVM中优化指南

    JVM中优化指南 如何将新对象预留在年轻代 如何让大对象进入年老代 如何设置对象进入年老代的年龄 稳定的 Java 堆 VS 动荡的 Java 堆 增大吞吐量提升系统性能 尝试使用大的内存分页 使用非 ...

  5. Add a Class from the Business Class Library 从业务类库添加类 (XPO)

    In this lesson, you will learn how to use business classes from the Business Class Library as is. Fo ...

  6. 顺F速运国际版,你的密码漏点了

    - 加密情况分析 对APP的分析过程,当然首先是安装,使用,抓包啦. 同样地,登录,抓包看看. 使用账号密码登录. - 壳呢? 虽然直接解密了顺F国际版的加密数据,但还是有必要看看它的APK. 经过分 ...

  7. [PHP] 新版本PHP7.4与新版本MySQL8认证问题

    mysql8的默认密码加密方式是caching_sha2_password,PHP7.4连接mysql的加密方式也为caching_sha2_password,这个地方要注意. 当为了兼容旧版的客户端 ...

  8. ubuntu中输入arm-linux-gcc -v出现no such file or directory

    这个问题困扰了我差不多两天时间了,明明已经安装了arm-linux-gcc,且系统变量和用户变量都配置好了 但每次输入arm-linux-gcc -v都会出现如题所示错误.最终经过查到一个帖子有说是因 ...

  9. 堆与栈(heap and stack)在c/c++的应用(概念)

    在学习c/c++时,我们经常会遇到 堆与栈 的问题,今天就来讲一下各类情况下的heap,stack的应用. 程序内存布局场景下,堆与栈表示两种内存管理方式: 1.内部分配时,堆和栈表示两种不同的内存管 ...

  10. golang数据结构和算法之LinkedList链表

    差不多自己看懂了,可以自己写测试了.:) LinkedList.go package LinkedList //"fmt" type Node struct { data int ...