正交矩阵用例使用说明

上一篇 / 下一篇  2013-07-01 11:09:49

测试用例(Test Case)是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径或核实是否满足某个特定需求。

  测试用例(Test Case)目前没有经典的定义。比较通常的说法是:指对一项特定的软件产品进行测试任务的描述,体现测试方案、方法、技术和策略。内容包括测试目标、测试环境、输入数据、测试步骤、预期结果、测试脚本等,并形成文档。

  目的

  本文以一个转帐功能为例介绍了测试例估计和设计的方法。

  例子说明

  进行测试例估计和设计的依据是需求规格说明书和设计说明书。一般的步骤如下:

  1. 分析影响测试对象的要素;

  2. 为每个要素确定取值;

  3. 使用标准直角矩阵生成初始测试例集;

  4. 在初始测试例集上依据对测试对象的分析来进行测试例集的修改;

  5. 把测试例转化为可以测试执行使用的测试例。

  例如在对某一应用系统的转账功能进行测试过程中,利用正交矩阵生成测试用例步骤如下:

  1.约束条件分析:P5L4

标号

影响测试规格的要素

取值1

取值2

取值3

取值4

1

用户权限

有转账权限

无转账权限

 

 

2

票据号

票据号有效

票据号无效

 

 

3

账号

账号有效

账号无效

 

 

4

转账金额

转账金额小于或等于用户实际金额

转账金额大于用户实际金额

 

 

5

转账方式

同城不同行转账

同行转账

异地电汇

异地信汇


图表 1

  注:P表示影响测试规格要素个数;L表示影响测试规格要素的最大取值个数

  在本例中P=5,L=4

  2.生成标准测试例集矩阵:

  根据以上约束条件分析得出的P、L值,对应直角矩阵测试例生成工具得出以下测试例矩阵

编号

用户权限

票据号

账号

转账金额

转账方式

1

1

1

1

1

1

2

1

2

2

2

2

3

1

3

3

3

3

4

1

4

4

4

4

5

2

1

2

3

4

6

2

2

1

4

3

7

2

3

4

1

2

8

2

4

3

2

1

9

3

1

3

4

2

10

3

2

4

3

1

11

3

3

1

2

4

12

3

4

2

1

3

13

4

1

4

2

3

14

4

2

3

1

4

15

4

3

2

4

1

16

4

4

1

3

2

图表 2

说 明:首先分析第一个要素“用户权限”,其取值只有2个,即“用户权限”的值只有可能是1或2,这样3和4的取值所在的情况就可以删除,之后在考虑“用户权 限”的2个取值的具体情况,一个是用户权限有效(1),另一个是用户权限无效(2),当取值为有效时,所有的情况都可以保留,当取值为无效时,只保留一个 就可以了(一旦最高优先级的条件不能满足,那么其他低优先级的条件就不需要考虑),然后用同样的方法判断其他的条件,最后等到一个临时结果(编号 1,2,5),这时可以从最后一个要素开始分析,要使最后一个要素有意义那前4个要素必须都成立(值为1),而要素“转帐方式”有4种取值而现在的结果中 有效情况只有一种(No1),所以可以增加3种(即,见表4中No2,3,4)。现在考虑要素“转帐金额”,可以增加在前3个要素都成立时,“转帐金额” 取值为大于用户实际金额的情况(即,见表4中No5)。接着考虑要素“帐号”,可以增加在前2个要素都成立时,“帐号”取值为帐号无效的情况(即,见表4 中No6)。接着考虑要素“票据号”,可以增加在第一个要素都成立时,“票据号”取值为票据号无效的情况(即,见表4中No7)。这样就补齐了所有的情 况,从而得到最终结果(表5)

  3.筛选测试矩阵:

  注:由于测试例矩阵是根据影响要素条件最大取值个数得出,因此不是所有影响要素的取值个数都与最大值相等,因此应将矩阵中不存在的测试例条件删除。

编号

用户权限

票据号

账号

转账金额

转账方式

1

1

1

1

1

1

2

1

2

2

2

2

3

1

3

3

3

3

4

1

4

4

4

4

5

2

1

2

3

4

6

2

2

1

4

3

7

2

3

4

1

2

8

2

4

3

2

1

9

3

1

3

4

2

10

3

2

4

3

1

11

3

3

1

2

4

12

3

4

2

1

3

13

4

1

4

2

3

14

4

2

3

1

4

15

4

3

2

4

1

16

4

4

1

3

2

图表 3

 4.修改测试矩阵:

  注:由于测试例矩阵是根据影响要素条件最大取值个数得出的,因此在删除测试例时应将因此导致测试矩阵范围不完整的测试例补充完整。

  说明:编号5,6,7,8的情况中有“-”,其意义为“取任何值都不影响结果”

编号

用户权限

票据号

账号

转账金额

转账方式

1

1

1

1

1

1

2

1

1

1

1

2

3

1

1

1

1

3

4

1

1

1

1

4

5

1

1

1

2

-

6

1

1

2

-

-

7

1

2

-

-

-

8

2

-

-

-

-

图表4

  5.生成测试用例:

编号

用户权限

票据号

账号

转账金额

转账方式

1

有转账权限

票据号有效

账号有效

转账金额大于或等于用户实际金额

同城不同行转账

2

有转账权限

票据号有效

账号有效

转账金额大于或等于用户实际金额

同行转账

3

有转账权限

票据号有效

账号有效

转账金额大于或等于用户实际金额

异地电汇

4

有转账权限

票据号有效

账号有效

转账金额大于或等于用户实际金额

异地信汇

5

有转账权限

票据号有效

账号有效

转账金额小于用户实际金额

同城不同行转账

6

有转账权限

票据号有效

账号无效

转账金额大于或等于用户实际金额

同城不同行转账

7

有转账权限

票据号无效

账号有效

转账金额大于或等于用户实际金额

同城不同行转账

8

无转账权限

票据号有效

账号有效

转账金额大于或等于用户实际金额

同城不同行转账

图表5

  说明

  使用直角矩阵的方法可以进行最初的测试分析设计和估计,但是随着项目的进展,测试组对系统的理解会逐渐加深,因此需要根据需要多次进行测试分析设计和估计。


TAG:

 

评分:0

我来说两句

日历

« 2024-04-24  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 16720
  • 日志数: 16
  • 文件数: 3
  • 建立时间: 2010-01-22
  • 更新时间: 2013-10-29

RSS订阅

Open Toolbar