兼容性测试是软件评测师必考的知识点,在下午场经常结合Web应用测试考察兼容性测试矩阵。兼容性测试将验证软件与其所依赖的环境的依赖程度,包括对硬件的依赖程度,对平台软件、其他软件的依赖程度等。下面就兼容性测试的概述、分类和平台化软件兼容性测试进行总结学习。
一、兼容性测试概述
兼容性测试需要在各种各样的软硬件环境下进行,因此兼容性测试是软件测试中投入较大的一部分。测试中的硬件环境指进行测试所必需的服务器、客户端、网络连接设备,以及打印机、扫描仪等辅助硬件设备所构成的环境。软件环境则指被测软件运行所需的操作系统、数据库、中间件、浏览器及与被测软件共存的其他应用软件等构成的环境。
二、兼容性测试的分类
(1)硬件兼容性测试:所有软件都需向用户说明其运行的硬件环境,对于多层结构的软件系统来说,需要分别说明其服务器端、客户端以及网络所需的环境。兼容性测试的目的就是确认这些对于硬件环境的描述是否正确、合理。
(2)软件兼容性测试:软件兼容性测试具体又分为与操作系统的兼容性测试、与数据库的兼容性测试、与中间件的兼容性测试、与浏览器的兼容性测试以及和其他软件的兼容性测试。
(3)数据兼容性测试:数据兼容是指软件之间能否正确地交互和共享信息,具体就是对不同数据格式的兼容性测试。
二、平台化软件兼容性测试
随着软件系统的规模变得越来越大,平台化软件的使用越来越普遍。平台化软件是指用来构建与支撑应用软件的独立软件系统。软件平台有两个基本要素,即支撑环境和开发体系,其中支撑环境是指应用软件系统开发与运行的基本条件,开发体系是指开发与维护管理应用软件的工具与方法。它又可以分为技术支撑型平台软件和应用实现型平台软件两种类型的平台。
平台化软件在设计上要求具备灵活方便的二次开发能力,实现分布式应用系统,做到硬件环境独立和软件环境独立,实现上层应用的技术无关性以及采用B/S与C/S结构相结合,因此对于平台软件来说,兼容性测试是极为重要和复杂的。
(1)跨硬件平台能力:在不同规模的硬件平台上进行测试,例如,从32位机到64位机,从单机运行到集群运行。
(2)跨操作系统能力:平台化软件应可以部署在各种流行的操作系统上,不仅应当在Windows操作系统上进行测试,还应当在UNIX、Linux、 UNIX、MacOS等系统上进行测试。
(3)支持多种数据库系统:包括SQL Server、Oracle、 DB2、Sybase等企业级数据库,以及国产主流数据库。
(4)客户端兼容性测试:平台化软件往往实现的是分布式的应用系统,因此可能采用C/S或B/S结构。对于需要进行软件安装的客户端,需要对客户端的硬件、软件兼容性分别进行测试,如果采用浏览器,则还需进行对浏览器兼容性的测试。
(5)数据兼容性测试:平台化软件是建立在共同平台上的一个系统,模块相互之间既具有较强的独立性,又可以独立使用,通过统一的数据接口又以可实现相互间的无缝集成,同时可以实现一致的对外接口。因此,各模块间数据的兼容性也是平台化软件的测试点之一。
下面是近几年对兼容性测试考察过的真题,有时候会结合Web应用测试一起考察出题,以后仍是考试出题的重点,大家要重视起来。
【2016年58题】兼容性测试不包括 ()
A.软件兼容性测试
B.硬件兼容性测试
C.数据兼容性测试
D.操作人员兼容性测试
解析:本题考查兼容性测试分类的基础知识。
兼容性测试分类主要可以分为三大类:硬件兼容性测试;软件兼容性测试;数据兼容性测试;不包括操作人员兼容性测试。
故正确答案为:D
【2017年下午场Web题目第2问】系统前端采用HTML5实现,已使用户可以通过不同的移动设备的浏览器进行访问。设计兼容性测试矩阵,对系统浏览器兼容性进行测试。
解析:本小题考查兼容性测试用例矩阵的简单应用,以下两种参考答案都可以在考试的时候使用,如果对题干里设计的设备和浏览器比较熟悉,建议使用参考答案1的形式,如果不熟悉,可以使用参考答案2的形式。
参考答案1:题目问到了不同的移动设备和浏览器的兼容性,那么可以根据具体的设备和浏览器来设计兼容性测试矩阵,如下所示:

参考答案2:也可以设置成通用的设备平台和浏览器来设计兼容性测试矩阵,如下所示:

作者唯一官方个人微信公众号(昊洋与你一起成长):HYJY20180101
写于2021年8月13日
作者:昊洋讲师
版权所有,侵权必究




