• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

软件测试中正交法设计测试用例实例分析

发布: 2010-11-29 09:09 | 作者: 赖因斯坦 博客 | 来源: 领测软件测试网采编 | 查看: 135次 | 进入软件测试论坛讨论

领测软件测试网

软件测试中正交法设计测试用例实例分析

测试用例(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

 

说明

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

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

TAG: 软件测试 设计 实例 交法 中正


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网