> 文章列表 > 兼容性测试

兼容性测试

兼容性测试

一、概念及背景

1、兼容性测试的背景(即为什么要做兼容性测试)

随着技术的不断发展和应用场景的不断扩展,软件开发环境变得越来越复杂多样化。不同操作系统、不同浏览器、不同设备等因素都可能影响软件应用程序的正常运行和用户体验。这就使得兼容性测试变得尤为重要。如果软件应用程序不能在各种环境下正常运行,可能会导致用户体验不佳,甚至会影响用户的忠诚度和市场占有率,给企业带来不必要的损失。因此,进行兼容性测试是确保软件应用程序质量的重要一环。通过兼容性测试,可以确定应用程序的可靠性、稳定性和性能,以及在各种环境下的易用性和用户满意度。因此,兼容性测试已成为每个软件开发周期中不可或缺的一部分,目的是确保软件在任何环境下都能够稳定运行并提供优秀的用户体验。

2、概念(什么是兼容性测试)

兼容性测试是指在不同平台、不同操作系统、不同浏览器、不同设备以及不同软件之间进行的测试,以确保应用程序能够在各种环境下正常运行并提供一致的用户体验。在软件开发周期中,兼容性测试通常是非常重要的一环,因为它可以检查软件与其他组件之间的相互作用,并确保软件在不同环境下的兼容性。例如,一个应用程序可能在Windows操作系统上运行良好,但在Mac操作系统上存在问题,或者一个Web应用程序在Firefox浏览器上正常工作,但在Internet Explorer浏览器上出现错误。通过进行兼容性测试,可以发现和解决这些问题,从而提高软件应用程序的稳定性和用户满意度。

二、兼容性分类

1、浏览器兼容性测试

  1.1 概念:

                      指的是在浏览器上检查web页面样式和元素的展示效果,以及交互是否正常

  1.2 主流浏览器:

      Windows:IE、火狐、谷歌、

      Mac:safari、火狐、谷歌

  1.3 测试注意事项:

     (1)浏览器兼容性测试常见于B/S(浏览器/服务器)结构的产品中

     (2)虽然我们能通过官方的一些统计数据去收集主流的浏览器和对应的版本,但最好让产品经理明确定义出支持哪些浏览器和对应的版本,因为这也取决于产品的应用人群和具体的业务场景

     (3)浏览器兼容性测试主要检查web页面样式和元素的展示效果,以及交互是否会有异常,跟具体的业务逻辑无关。

     (4)跟前端开放人员多交流,明确哪些样式或元素不是标准的,很有可能会出现兼容性问题,现有针对性地在所有要求支持的浏览器版本上进行验证,在挑选每种浏览器的一个版本去验证所有的标准页面。

     (5)多记录,多总结,做好统计分析,在后续的测试中,只需针对有改动的、容易出现兼容性问题的元素和样式进行测试

     (6)留意IE大版本升级,以及谷歌和火狐的迭代版本更新,阅读更新的版本说明 ,了解是否有大的改动可能影响到页面的展示火证交互,有计划地去执行兼容性测试

2、操作系统兼容性测试

        2.1 概念:

                 在指定的操作系统上检查产品功能是否正常

       2.2 主流系统:

      Windows系统、Mac osx系列,linux系统、ios系统

   2.3 测试注意事项:

     (1)常见于C/S(客户端/服务器端)结构的产品,互联网时代的应用程序从广义上来说也是C/S结构的

     (2)基本的注意事项和上述的浏览器兼容性测试一样,需要关注的是,不同版本的操作系统默认的权限级别会有所不同,从而导致客户端需要访问或调用系统组件或方法时会出错

     (3)同一类操作系统的大版本升级时,需要注意在新的版本或补丁里是否继续兼容老版本的库函数

3、多版本兼容性测试

         3.1 概念:

             是为了验证新版本服务器端是否同时支持新/老版本客户端而进行的测试

   3.2 测试注意事项:

     (1)这是很多产品经理在设计需求是容易忽略的地方,也是C/S产品和B/S产品从兼容性角度来说最大的区别

     (2)在产品升级后,服务器端只会是最新版本,但是客户端因为不同的用户场景而可能存在老版本,一种原因是没有强制更新,用户不选择升级;另一种原因是在一些企业级的环境里,刻画段包是否升级取决于管理员的策略

     (3)针对客户端的产品而言,测试相对简单一些,只要保证服务器每次升级都不会因为新需求而修改老接口,基本上不会有太多兼容性问题

     (4)测试相对复杂的是那种既有商家版本又有用户版的客户端产品,针对会频繁发生交互的功能,需要重点考虑新、老版本的兼容性测试

4、数据兼容性测试

        4.1 概念:

            因为新功能的需要火证已有功能的升级改造,涉及已有数据的读取和写入而需要进行的验证,以确保数据在新、老版本之间都能正常流转的过程

  4.2 测试注意事项:

     (1)向前兼容,新版本的软件要能正常且正确地读取和加载老版本生成的数据

     (2)向后兼容,当前版本的软件要能支持在后续高版本的平台上正常运行

     (3)常见的office类软件或多媒体制作或播放类软件,不仅需要考虑新版本客户端能否正确读取老版本的生成的文件,还要考虑新版本生成的文件是否能本老版本客户端正常的读取,火证有相应的升级提示信息

     (4)还有一类是常见的订单类数据,会更多的关联后台历史数据的迁移和转换,这一部分内容也是需要重点关注的,以确保迁移和转换后的数据用户能正确的读取

5、分辨率兼容性测试

         5.1 概念:

      也被称作适配性测试,是指 验证被测网页或产品UI在各种分辨率下的显示器和各种分辨率、尺寸屏幕的移动设备上都能正常显示的测试过程

    5.2 测试注意事项:

      (1)需要关注的一种是普通的分辨率的屏幕,另一种是高清分辨率的屏幕

      (2)需要关注的问题主要包括显示是否完整、图片是否被拉伸、文字和图片位置是否有错位。

三、注意强调事项

1、主流的浏览器(B/S):IE Firefox Chrome

1.1、兼容性取决于产品的应用人群和具体的业务场景

1.2、主要是检查WEB页面样式和元素的展示效果,以及交互是否会有异常

1.3、 跟前端的交流,明确哪些样式跟元素是不标准的,针对性的去验证。

1.4、留意浏览器的大版本的更新。

——————————————

2、主流的 操作系统(C/S):WINDOWS、Mac OS X系列、UNIX/LINUX系列、Android系列、iOS 系列

2.1、 关注操作系统的权限不同,导致客户端访问和调用的系统组件或方法出错

2.2、 操作系统的大版本升级,注意新的版本是否兼容老版本的库函数。

2.3、产品升级——服务端是最新版本——客户端因为可以选择性更新不更新而显示不同

2.4、单客户端的产品——保证服务端的每次升级不会因为新需求而修改老接口,基本兼容没问题

2.5、 商家版(用户版)——客户端。针对频繁发生交互的功能,重点考虑新老版本的兼容问题

2.6、数据兼容测试:涉及已有数据的读取和写入,确保新老版本都能流转。

———————————————

3、相关兼容

3.1、向前兼容

3.2、向后兼容

3.3、office类软件、媒体软件能否镇超正常读取,新版本能否正常被老版本读取,以及相应的升级提示

3.4、常见的订单类数据读取问题,业务流程是否正常进行

3.5、 数据性兼容,关联后台历史数据的迁移和转换,

3.6、分辨率兼容:就是UI