本节书摘来自华章计算机《腾讯iOS测试实践》一书中的第3章,第3.4节,作者:丁如敏 王琳 等著
更多章节内容可以访问云栖社区“华章计算机”公众号查看。
3.4 测试原则
一般来说,进入测试窗口期的系统不会超过四个大系统,即最新的四个系统,例如当前是iOS 10系统最新,那么就覆盖iOS 10、iOS 9、iOS 8、iOS 7。当然,这跟被测App可安装的系统有关,当前QQ浏览器(iPhone)还支持iOS 7,未来当发现iOS 7的用户量比较少时就会考虑放弃支持这个系统,那么对应的iPhone 4就会退出测试的覆盖范围。截至本稿撰写时,处于iOS 10不断发小版本的阶段,每个系统下的机型分布如表3-5所示。
由于实际测试人力受限,不能每个机型的系统都进行覆盖,因此主要策略如下。
以操作系统覆盖齐全为主,最高系统保持最新和次新,机型尽量照顾高低两端机型。
迭代测试(增量测试)阶段,对于新增功能一般采用四个系统都覆盖,机型选择尽量不重复。如果人力够,还需要格外留心低端机型的高端系统,如iPhone 5上搭载iOS 10的系统,或者iPhone 4上搭载iOS 7。另外,对版本最高的系统尽量覆盖两个以上的子系统,例如当前是iOS 10.2版本最新、iOS 10.1次新,这两个系统都应尽量覆盖到。
在集成测试阶段,由于需要执行大量的FT用例,所以一般每个模块的测试都无法保证全系统的覆盖,只有入口级别的用例才在所有系统上运行。表3-6所示的是QQ浏览器(iPhone)版在集成测试阶段需要全系统覆盖的用例。
。
综上所述,各阶段的兼容性测试原则如图3-7所示。
图3-7 问题模型
图3-7的模型是iPhone日常测试常见的机型系统覆盖分布,也是对无法进行全量系统机型覆盖的一种相对妥协的策略,构建这个模型也是尽量覆盖到易发问题机型系统,不同的App对应的问题模型也有所差异,图3-7所示的问题模型是结合QQ浏览器(iPhone)版本和实际测试人力来建设的,仅供参考。