目录
一、兼容性测试概要
不同模块间传递的数据发生变化导致实际运行结果不符合逾期,即产生兼容性问题。
- 前后兼容性:组件升级前后,原有数据、接口功能等是否能正确处理
- 依赖兼容性:组件依赖的硬件架构、OS、其他组件(shell、python等)、网络,包括依赖的组件与其依赖的组件间的差异性
- 组件内部:模块间的依赖关系、关联关系
- 国际化:语言、编码等
- 已知功能在不同场景的差异性
二、兼容性问题
- shell语法的兼容性,bash、csh等之间的语法存在微小差异,导致兼容性问题
- 不同OS间的兼容性,路径分隔符(/、\)、路径大小写(windows、linux)、OS语言(命令打印的字符串差异)、OS编码、OS时间格式、OS不同版本间内置命令版本不同后输出内容的差异(file *.BC文件)、系统自身问题(某OS普通用户ssh-copy-id时无法自动创建.ssh目录)、回车换行的差异等
- 接口因参数个数、类型等发生变化,导致不兼容
- 网络数据转换兼容性
三、兼容性测试
- 案例库建设(黑白灰盒分析)
- 固化到详细设计模板中,尽早考虑兼容性场景
- 自动化测试,除了覆盖已分析出的兼容性场景,其余正常功能需覆盖