3.3 兼容性测试矩阵
兼容性测试主要对被测系统运行所依赖的各种软硬件进行组合,然后进行主流程或者约定检测流程的功能走查。兼容性测试的重点在测试设计阶段,兼容性测试设计的主要工作是首先统计兼容性测试因素,然后设计兼容矩阵,最后按照兼容性矩阵执行测试,记录缺陷。
3.3.1 获取兼容性测试因素
兼容性测试因素就是被测系统需要支持的终端类型。这里如果被测系统是一个Web端的PC服务,就需要知道浏览器名称、对应的版本、支持的操作系统等。如果被测系统是一个移动端的服务,那么就需要知道终端支持的操作系统、终端设备品牌和型号等,这些不是由内部会议讨论得出的,而是通过一些必要输入获取到的,具体有以下3种途径。
客户的需求:无论是PC端系统还是移动端系统,任何一个系统要支持的设备需求都是从最终用户处得到的。因此,兼容性测试因素的一个来源就是需求,产品经理可以和业务方一起收集需求,这也是兼容性测试因素的收集条件之一。这虽然看似合理,但是往往很难得到一个准确的答复。
埋点日志:很多已经上线的系统拥有前端埋点,从埋点日志中获取所有访问被测服务的终端信息,从而整理出访问被测系统的终端的类型。这是获取当前兼容性测试因素的来源之一,如果获取的种类特别多,往往会获取95%的终端类型,从而支持绝大部分用户,近似获取95.45%的兼容指标。当然,如果系统是全新的,该方式就不起作用。
其他服务:如果系统是全新的,可以通过StatCounter网站获取当前占有量,从而得到兼容性测试因素。移动端可以通过搜索类似服务为获取兼容性测试因素提供一些支持。
3.3.2 兼容性矩阵设计
假设兼容性测试因素设计如图3-21所示。
图3-21 兼容性测试因素设计
依据上面的兼容性测试因素(一个因素对应正交表中的一列),结合正交实验测试用例设计方法,选择依据因素水平(每个因素可取值的个数),这里选择强度(由测试工程师确定)为2的正交计算,得到测试用例。
依据图3-22中的兼容性矩阵,准备兼容性测试环境,然后开始测试。
图3-22 兼容性测试矩阵