很多对软件测试行业感兴趣的小伙伴,都听说过兼容性测试,但却不太理解兼容性测试是干啥的。除了我们日常经常听到的手机版本兼容,游戏升级迭代,其实兼容性测试还包括很多其
很多对软件测试行业感兴趣的小伙伴,都听说过兼容性测试,但却不太理解兼容性测试是干啥的。除了我们日常经常听到的手机版本兼容,游戏升级迭代,其实兼容性测试还包括很多其他方面。今天,我们就一起来盘一盘什么是兼容性测试吧~
什么是兼容性测试?
我们先来想一下,什么叫兼容。也就是说放在不一样的载体,或者不一样的环境里,这个程序都必须能正常运转,这个叫兼容。所以,也就不难理解什么叫兼容性测试了吧~
根据度娘官方的解释:软件兼容性测试是指,检查软件之间能否正确地进行交互和共享信息。
随着用户对来自各种类型软件之间共享数据的能力,和充分利用空间同时执行多个程序能力的要求,测试软件之间能否协作变得越来越重要。由此,也就有了这方面的专业测试技术。而软件兼容性测试工作的目标,就是要保证软件按照用户期望的方式进行交互。
兼容性测试包含哪几类呢?
那么,你可能要问了,兼容性测试包含哪几类呢?
(1)浏览器方面
关于浏览器的兼容性测试,主要是检查页面的交互、元素和样式展示是否正常。我们都知道,目前市面上主流的浏览器非常多,像:360、搜狗、火狐等等。
在进行测试的时候,由于兼容性问题很多,所以小编给大家整理了一些测试注意事项,一起来看一下:
①明确目标用户:虽然产品经理会统计主流的浏览器和稳定的版本有哪些,但是,作为测试人员还是应该深入目标用户,去了解真实的使用环境和义务场景,这样会更符合实际;
②明确元素合理性:多跟开发沟通,明确哪些元素或者样式容易出现不兼容,针对性地去测试,确保上线后的展示效果;
③多记录、多总结:做好统计和分析,在后续的测试过程中,只需针对有改动的、易出现兼容性问题的元素和样式进行测试即可;
④其他:注意主流浏览器的版本迭代,是否会对既定程序有影响;
(2)操作系统方面
这个主要是说去检查指定的操作系统上,产品功能是否正常。包括:Android系列、iOS系、鸿蒙、Windows系列等等。相应的注意事项有这些:
①测试内容基本和浏览器是差不多的,区别就是要关注一下:默认的操作权限不同,是否会造成客户端需要访问或调用系统组件、方法时,出现漏洞;
②操作系统升级后,新版本或补丁里是否继续兼容老版本的库函数。
(3)多版本方面
这个主要是为了验证新版本服务器端是否同时支持新/老版本客户端,不得不进行的测试。注意事项如下:
① 这是在需求设计阶段,最容易忽略的地方。在产品升级之后,服务器端只会是最新版本,但客户端因为不同的用户场景而可能存在老版本,一种原因是没有强制更新,用户不选择升级;另一种原因是在一些企业级的域环境里,客户端包是否升级取决于域管理员的策略。
② 另外就是相对复杂的测试环境,比如既有商家版又有用户版客户端产品的兼容性测试,这种需要考虑频繁发生交互的功能,也需要重点考虑新、老版本的兼容性问题。
(4)数据兼容性方面
这种比较好理解,就是软件升级迭代后,涉及已存在的数据的读取和写入数据的过程,确保数据在新、老版本之间都能正常流转。注意事项如下:
①向前兼容:新版本要能正常且正确地读取和加载老版本生成的数据;
②向后兼容:新版本要能支持在未来后续迭代版本上正常运行;
③常见的播放类软件、Office类软件等,还要考虑新版本生成的文件是否能被老版本客户端正常读取等,或者有相应的升级提示信息。
④订单类数据,还要考虑在老版本的服务器端和客户端组合下,产生的数据是否能在新版本的服务器端和客户端组合下成功读取;
(5)分辨率方面
也叫适配性测试,是指验证被测网页或产品UI在各种分辨率下的显示器或各种分辨率、尺寸屏幕的移动设备上都能正常显示的测试过程。主要考虑屏幕分辨率,版本分辨率等。
写在最后
对于从事测试行业的小伙伴而言,兼容性测试是软件测试过程必不可少的一个过程,没有兼容测试的测试是不完整的测试。
在产品快速迭代的需求下,想要成为一名优秀的软件测试工程师需要掌握怎样使用自动化技术来改变现有工作模式,快速发现Bug,保证产品能够得到充分且快速的测试。
(责任编辑:中博IT教育)