正交分析法例子1:
假设一个WEB站点,该站点有大量的服务器和操作系统,并且有许多具有各种插件的浏览器浏览:
WEB浏览器:Netscape6.2、IE6.0、Opera4.0
插件: 无、RealPlayer、MediaPlayer
应用服务器:IIS、Apche、Netscape Enterprise
操作系统:Windows2000、Windows NT、Linux
| WEB浏览器 | 插件 | 应用服务器 | 操作系统 |
1 | Netscape6.2 | 无 | IIS | Windows2000 |
2 | Netscape6.2 | RealPlayer | Apche | Windows NT |
3 | Netscape6.2 | MediaPlayer | Netscape | Linux |
4 | IE6.0 | 无 | Apche | Linux |
5 | IE6.0 | RealPlayer | Netscape | Windows2000 |
6 | IE6.0 | MediaPlayer | IIS | Windows NT |
7 | Opera4.0 | 无 | Netscape | Windows NT |
8 | Opera4.0 | RealPlayer | IIS | Linux |
9 | Opera4.0 | MediaPlayer | Apche | Windows2000 |
正交表:
| 1 | 2 | 3 | 4 |
1 | 1 | 1 | 1 | 1 |
2 | 1 | 2 | 2 | 2 |
3 | 1 | 3 | 3 | 3 |
4 | 2 | 1 | 2 | 3 |
5 | 2 | 2 | 3 | 1 |
6 | 2 | 3 | 1 | 2 |
7 | 3 | 1 | 3 | 2 |
8 | 3 | 2 | 1 | 3 |
9 | 3 | 3 | 2 | 1 |
一、 提取系统功能说明中的因子:
1、WEB浏览器
2、插件
3、应用服务器
4、操作系统
二、 分析各因子的状态
1、WEB浏览器:1=Netscape6.2、2=IE6.0、3=Opera4.0
2、插件: 1=None、2=RealPlayer、3=MediaPlayer
3、应用服务器: 1=IIS、2=Apche、3=Netscape Enterprise
4、操作系统: 1=Windows2000、2=Windows NT、3=Linux
三、 将因子、状态映射到上面正交表中:
测试用例 | 浏览器 | 插件 | 服务器 | 操作系统 |
1 | Netscape6.2 | None | IIS | Windows2000 |
2 | Netscape6.2 | RealPlayer | Apche | Windows NT |
3 | Netscape6.2 | MediaPlayer | Netscape Enterprise | Linux |
4 | IE6.0 | None | Apche | Linux |
5 | IE6.0 | RealPlayer | Netscape Enterprise | Windows2000 |
6 | IE6.0 | MediaPlayer | IIS | Windows NT |
7 | Opera4.0 | None | Netscape Enterprise | Windows NT |
8 | Opera4.0 | RealPlayer | IIS | Linux |
9 | Opera4.0 | MediaPlayer | Apche | Windows2000 |
正交分析法例子2:
一、某数据库查询语言依规格说明书得到如下的因子――状态表:
表1 因子—状态表
因子 状态 | A 查询类别 | B 查询方式 | C 元胞类别 | D 打印方式 |
1 | 功能 | 简单 | 门 | 终端显示 |
2 | 结构 | 组合 | 功能块 | 图形显示 |
3 | 逻辑符号 | 条件 |
| 行式打印 |
| 功能类别 | 查询方式 | 元胞类别 | 打印方式 |
1 | 功能 | 简单 | 门 | 终端显示 |
2 | 功能 | 组合 | 功能块 | 图形显示 |
3 | 功能 | 条件 |
| 行式打印 |
4 | 结构 | 简单 | 功能块 | 行式打印 |
5 | 结构 | 组合 |
| 终端显示 |
6 | 结构 | 条件 | 门 | 图形显示 |
7 | 逻辑符号 | 简单 |
| 图形显示 |
8 | 逻辑符号 | 组合 | 门 | 行式打印 |
9 | 逻辑符号 | 条件 | 功能块 | 终端显示 |
二、经过加权筛选,得到因素分析表如下:
表2 因素分析表
因子 状态 | A 查询类别 | B 查询方式 | C 元胞类别 |
1 | 功能 | 简单 | 门 |
2 | 结构 | 组合 | 功能块 |
3 |
| 条件 |
|
表3 因素分析表
因子 状态 | A | B | C |
1 | A1 | B1 | C1 |
2 | A2 | B2 | C2 |
3 |
| B3 |
|
三、利用数据表构造测试数据集
1、画出布尔图
2、把结点21、22、23当作因子,则它的输入可以当作状态,这时就可以使用正交表了。
表4
因子 组合号 | 21 | 22 | 23 |
1 | 0 | 0 | 0 |
2 | 1 | 0 | 1 |
3 | 0 | 1 | 1 |
4 | 1 | 1 | 0 |
3、替换中间节点
结点 组合号 | 21 | 22 | 23 |
|
|
| |
1 | A1 | 31 | C1 |
2 | A2 | 31 | C2 |
3 | A1 | B3 | C2 |
4 | A2 | B3 | C1 |
替换中的正交表
针对中间结点31,可做同样的工作,继续替换,得到下表:
结点 组合号 | 21 | 22 | 23 |
|
| | |||
1 | A1 | B1 | C1 |
|
2 | A1 | B2 | C1 |
|
3 | A2 | B1 | C2 |
|
4 | A2 | B2 | C2 |
|
5 | A1 | B3 | C2 |
|
6 | A2 | B3 | C1 |
|
替换中的正交表
最后得到具有6组测试数据的测试数据集:
因子 测试组号 | A | B | C |
1 | A1 | B1 | C1 |
2 | A1 | B2 | C1 |
3 | A2 | B1 | C2 |
4 | A2 | B2 | C2 |
5 | A1 | B3 | C2 |
6 | A2 | B3 | C1 |
测试输入数据集
四、根据每行数据得到测试用例