本节书摘来自异步社区《软件测试技术实战:设计、工具及管理》一书中的第2章,第2.5节运用正交法设计测试用例,作者顾翔,更多章节内容可以访问云栖社区“异步社区”公众号查看。
2.5 运用正交法设计测试用例
案例2-14:网站兼容性组合测试。
本节介绍采用正交法设计多种组合情况下的测试用例。
下面是软件测试某网站系统的例子。
(1)8种浏览器:IE9、IE10、IE11、Netscape 9.0、火狐36、Safari 5.3、Firefox 35、百度7.2。
(2)3种Office插件:Office 2007、Office 2010、Office 2013。
(3)6种客户端操作系统:Windows XP、Windows Vista、Windows 8.0、Windows 8.1、Windows 9、Windows 9.1。
(4)3种服务器软件:IIS、Apache、WebLogic。
(5)3种服务器端操作系统:Windows 2003、Windows 2008、Linux。
如果达到100%组合的软件测试,需要设计8×3×6×3×3=1296个测试用例,这个数据非常庞大,利用正交法可以在最大程度上减少测试用例,而且可以保证软件测试一定的可靠性。下面简单介绍一下正交法。
2.5.1 正交法
正交法又称两两组合法,它保证测试用例中的两两组合不同,但两两覆盖所有的组合。比如,现在有3个变量,每个变量有两种取值,标记为0和1。这样,测试用例为2×2×2=8个,这种情况下的正交表见表2-15。
第2、1、3、4行,BC分别对应00、01、10、11(满足了0和1的所有4种组合)。
第3、1、2、4行,AC分别对应00、01、10、11(满足了0和1的所有4种组合)。
这样,8个测试用例就被简化为4个,减少率为50%。这种情况标记为:
L4(23)
这里,2代表有2个取值,3代表有3个变量,4代表有4种组合。
2.5.2 浏览器组合软件测试
下面介绍本节开始的那个网站如何使用正交法来设计测试用例。
(1)8种浏览器:IE9、IE10、IE11、Netscape 9.0、火狐36、Safari 5.3、Firefox 35、百度7.2。
(2)3种Office插件:Office 2007、Office 2010、Office 2013。
(3)6种客户端操作系统:Windows XP、Windows Vista、Windows 8.0、Windows 8.1、Windows 9.0、Windows 9.1。
(4)3种服务器软件:IIS、Apache、WebLogic。
(5)3种服务器端操作系统:Windows 2003、Windows 2008、Linux。
8个取值有1个,6个取值有1个,3个取值有3个,所以需要找到是否存在816133正交表,这样的正交表不存在,但是在正交表中找到了最接近的L64(8243)表,为此需要对原来的取值进行调整,加入No used选项,调整后的结果如下。
(1)8种浏览器:IE9、IE10、IE11、Netscape 9.0、火狐36、Safari 5.3、Firefox 35、百度7.2。
(2)3种Office插件:Office 2007、Office 2010、Office 2013、No used。
(3)6种客户端操作系统:Windows XP、Windows Vista、Windows 8.0、Windows 8.1、Windows 9.0、Windows 9.1、No used、No used。
(4)3种服务器软件:IIS、Apache、WebLogic、No used。
(5)3种服务器端操作系统:Windows 2003、Windows 2008、Linux、No used。
L64(8243)的正交表如图2-13所示。