美文网首页软件测试从零开始
测试用例设计方法篇-正交实验法2

测试用例设计方法篇-正交实验法2

作者: 觅识堂的十一 | 来源:发表于2019-11-12 11:51 被阅读0次

大家好,我是十一。

前情回顾

上面一篇我们讲了正交实验法,我们先来回顾下:

正交实验法

正交试验法是研究多因素、多水平的一种试验法,它是利用正交表来对试验进行设计,通过少数的试验替代全面试验。

组成元素:因素/因子,即被测试的元素;水平数,即每个被测试元素的取值个数(用等价类划分、边界值分析法得出来的值);行数,即实验次数或者说测试用例个数。

建表步骤:同组成元素一样,先确定因素;再确定水平;最终确定行数。

问题解答

接下来我们来看看上篇留的作业;上篇中我们最后用正交实验法得出如下图所示的4个测试用例:

具体为什么是这4条测试用例,我们就要提到正交表的两个特性了。具体如下:

特性一:每一列中各个值出现的次数都一样多;

比如:鲜花系列这列中,尊贵和优雅均出现2次;配送时间这列中,工作日和双休日均出现2次;购买套餐中1年期和3年期各自出现2次。

特性二:任何两列所构成的续数对出现的次数都一样多。所以称之为正交表

每两列的组合中既没有重复也没有遗漏的,反应了试验点分布的均匀性。

比如:鲜花系列和配送时间这两列中,两两组合共有4种情况,全部列出来即尊贵-工作日、尊贵-双休日、优雅-工作日、优雅-双休日;鲜花系列和购买套餐这两列中,两两组合共有4种情况,全部列出来即尊贵-1年期、尊贵-3年期、优雅-3年期、优雅-1年期;最后配送时间可购买套餐这两列,同样两两组合共有4种情况,全部列出来即工作日-1年期、双休日-3年期、工作日-3年期、双休日-1年期;把这3列拼起来即组成了我们的表2:正交测试。

总结:由测试用例可以看出:如果按每个因素两个水平数来考虑的话,全面测试需要8个测试用例,而通过正交实验法设计测试用例只需要4个用例,大大减少了测试用例数。正交实验法做到了用最小的测试用例集合去获取最大的测试覆盖率。

上面例子中,我们每个因子的水平数一样,我们称这类正交表为相同水平正交表;如L4(2^3)、L8(2^7)、L12(2^11)等各列中最大取值个数为2,称为两水平正交 表;L9(3^4)、L27(3^13)等各列中最大取值个数为3,称为3水平正交表。凡是标准表,水平数都相等。那与之相反的就是混合正交表了。混合正交表如何构建呢?

混合正交表

一个正交表中各列的水平数不相等时,我们称它为混合型正交表,如L8(4×2^4),即:L8(4^1×2^4),此表的5列中,有1列为4水平,4列为2水平。再如L16(4^4×2^3),L16(4×2^12)等都混合正交表。

比如:我们现在有需求是其中有一列有4个选项值,有四列有2个选项值,那么我们可以直接套用L8(4×2^4)这个正交表,具体操作见上篇《测试用例设计方法篇-正交实验法》中的例子介绍,唯一要注意的是,混合正交表的行数计算为:

行数 = 因素数 * (水平数 -1)+ 因素数 * (水平数-1)+1

如L8(4×2^4)这个,8 = 1 * (4-1)+ 4 * (2-1)+1;

找不到匹配的正交表

值得注意的是,在这两篇中我们一直说的都是“选取正交表,然后套用”;为什么这么说呢?因为事实上并不是我们想要什么正交表就有什么正交表,有的正交表是没有被设计出来的,我们选取正交表时只能从现有的正交表中进行选择(现有正交表见附录介绍)。

那前面讲到的都是有刚好匹配的正交表的情况,那么测试时我们会发现实际测试中情况要更复杂,更多变,现有的正交表中根本没有我们想要的,有可能是因素不同,也有可能水平数不同,总之就是没有完全符合的,这时候如何选择正交表呢?

接下来我们看个例子,我们通过例子来讲解。

比如我们对爱奇艺播放器进行进行简单的测试,说明如下:

爱奇艺浏览器的播放位置有:开始位置、中间段、结尾位置;播放状态有:播放中、暂停;播放的操作有:快进、快退;

1.先确定因素

根据需求,发现因素为:播放位置、播放状态、播放操作

2.确定因素的水平,如下表因素-水平表-1所示:

因素-水平表-1

3.选定正交表

根据因素-水平对应的表来看,有一个因素(播放位置)是3水平,有两个因素(播放状态和播放操作)是2水平;查询附录中的正交表,发现没有与之完全符合的正交表,与之接近的正交表有L4(2^3),我们将播放位置的水平由3缩减到2,那么因素-水平表变为“因素-水平表-2”所示:

因素-水平表-2

L4(2^3)表表示如下表正交表-1所示:

将我们例子中的因素、水平带入表中,成为正交表-1,如下:

正交表-1

然后把“正交表-1”中的灰色区域展开变成两条,如正交表-2所示:

正交表-2

正交表-2就是我们最终得到的正交表,这个表中每一行就是一个测试用例,大家可以自己写出来,作为这节课的课后作业!

课后思考题

如下两个问题,留作课下思考题,同样也是我们下节课的知识点,希望大家自行思考或者百度先找找答案。

问题一:百度下会发现很多文章中说当发现没有匹配的正交表时,我们需要选择在因素和水平数都满足的前提下行数最少的正交表,也就是说选择水平数和因素数>=当前水平数和因素数的正交表,那我们这篇中用到的方法显而易见不是这个,为什么呢?两者的差别在哪里?

问题二:是不是正交实验法设计出来的测试用例来就足够我们测试使用了?

附录

正交表:

https://www.york.ac.uk/depts/maths/tables/orthogonal.htm

https://www.york.ac.uk/depts/maths/tables/taguchi_table.htm

好了,今天到此结束。如有任何问题请留言及时与我沟通,我会尽快回复大家!谢谢大家~我们下次再见!

让我们共同相伴,开启软件知识之旅。

相关文章

  • 正交试验法基础与实践

    正交实验法简介 正交测试用例设计又称为组合试验法,利用场景法来设计测试用例时,作为输入条件的场景非常庞大,以至于得...

  • 面试问题

    1、 2、 3、 4、 5、 6、 7、 8、 9、 1、 2、 正交表测试用例设计方法的特点: 3、 单元测...

  • 测试用例设计方法篇-正交实验法2

    大家好,我是十一。 前情回顾 上面一篇我们讲了正交实验法,我们先来回顾下: 正交实验法正交试验法是研究多因素、多水...

  • 测试用例设计方法篇-正交实验法

    大家好,我是十一。 前情回顾 上面一篇我们讲了错误推测法,我们先来回顾下: 错误推测法错误推测方法是依赖对被测软件...

  • 测试用例的几种常见设计方法

    测试用例常见的设计方法有:等价类划分法、边界值分析法、错误推测法、判定表法、正交实验法。 一.等价类划分法 顾名思...

  • 测试用例设计方法篇-正交实验法3

    大家好,我是十一。 前情回顾 上面一篇我们讲了正交实验法,我们先来回顾下: 正交表的两大特性:1.正交表中每一列中...

  • 需求分析与用例设计

    测试用例的方法 等价类 边界值 判定表法 正交实验法 流程分析法 状态迁移法 输出域覆盖法 输入域覆盖法 错误猜测...

  • 用正交实验法设计测试用例

    正交表的由来 拉丁方名称的由来 古希腊是一个多民族的国家,国王在检阅臣民时要求每个方队中每行有一个民族代表,每列也...

  • 第六章学习总结

    测试用例设计方法 正交表分析法 http://www.51testing.com/html/08/n-228608...

  • 黑盒测试用例设计之正交实验法

    一、正交表的描述 因素数:条件因子的个数 水平数:条件因子取值的个数,取所有条件因子中取得值数目最大的那个。 根据...

网友评论

    本文标题:测试用例设计方法篇-正交实验法2

    本文链接:https://www.haomeiwen.com/subject/zxifictx.html