使用正交表高效地设计测试用例
(我的公众号“墨石测试攻略”,分享测试经验,欢迎关注!)
在测试过程中,我们会遇到一些可能的输入数据或输入数据组合量很大的情况,我们不可能对每个组合都创建测试用例。使用一般的测试方法可能会产生大量的冗余测试,而使用正交表可以用最少的测试用例获得最大的测试覆盖率。
概念说明
正交试验设计法:是研究多因素水平的一种方法,根据正交性,从大量的试验点中挑选出适量的、有代表性的点进行试验。
特点:通过对部分试验结果的分析了解全面试验的情况,找出最优的水平组合。
正交表由行、因素、水平构成。
行:即试验的次数
因素(Factor):在同一试验中,影响试验结果的输入条件称为因素
水平(Lever):影响每个试验因素的取值或输入称为水平
正交表的表示形式:
设计步骤
用正交表设计测试用例的步骤:
1、确定因素:即确定交互测试中有多少个相互独立的变量
2 、确定水平:即确定每个变量可以取值的的个数的最大数
3 、选择正交表:选择一个次数(Run)数最少的最适合的正交表。一个最合适的正交表是至少满足第一步说明的因素数且至少满足第二步说明的水平数。如果没有合适的正交表或需要的功能测试数量太多,要对因素和水平进行调整
如何选择:考虑因素的个数;因素水平的个数;正交表的行数,取行数最少的那个
4 、套用正交表,把因素和值映射到表中
5、加上一些你认为可疑但没有在表中出现的组合,或去掉一些实际并不可能出现的组合
6、将上述所描述的组合转化成测试用例
举例
场景:根据姓名、电话、班级查找学生。使用正交实验法分析过程如下:
第一步:确定因素
本例中一共有三个因素:姓名、电话、班级
第二步:确定水平
每个因素的取值称为水平。姓名、电话、班级各有两个水平:输入(1),不输入(0)
姓名 |
电话 |
班级 |
输入 |
输入 |
输入 |
不输入 |
不输入 |
不输入 |
第三步:选择正交表
表中的因素数>=3,表中至少有三个因素的水平数>=2,行数(试验次数)取最少的那个,因此选择这个正交表L4(2^3)--表示需做4次试验,最多观察3个因素,每个因素均有2个水平:
序号 |
1 |
2 |
3 |
1 |
1 |
1 |
1 |
2 |
1 |
2 |
2 |
3 |
2 |
1 |
2 |
4 |
2 |
2 |
1 |
备注:并不是我们想要什么正交表就有什么正交表,有的正交表是没有被设计出来的,我们选取正交表时只能从现有的正交表中进行选择,而且选择的正交表要满足上述中的因素数和因素水平,在这个前提下选择行数最少的一个。
(可以通过下列的网址查找正交表http://support.sas.com/techsup/technote/ts723_Designs.txt)
第四步:套用正交表
序号 |
姓名 |
电话 |
班级 |
1 |
输入 |
输入 |
输入 |
2 |
输入 |
不输入 |
不输入 |
3 |
不输入 |
输入 |
不输入 |
4 |
不输入 |
不输入 |
输入 |
第五步:结合实际情况增删测试组合
正交表是用数学推导出来的,有的组合可能并没有实际意义,有的实际情况可能并没有包含。
序号 |
姓名 |
电话 |
班级 |
1 |
输入 |
输入 |
输入 |
2 |
输入 |
不输入 |
不输入 |
3 |
不输入 |
输入 |
不输入 |
4 |
不输入 |
不输入 |
输入 |
5 |
不输入 |
不输入 |
不输入 |
第六步:将第五步描述的组合转化为测试用例
用例编号 |
CX-001 |
测试项目 |
学生查询系统 |
用例标题 |
输入姓名、电话,不输入班级,查询学生 |
用例等级 |
中 |
前置条件 |
数据库中已存在学生数据 |
操作步骤 |
1、进入查询界面 2、输入学生姓名 3、输入学生电话号码 4、点击【查询】 |
预期结果 |
查询出符合条件的学生姓名 |
总结与分析
这个示例中,因素数和水平数刚好符合正交表,可以直接套用。如果使用普通的设计方法,那么全部组合可能设计出23=8种。而使用正交表,只需5种,减少了一些冗余的测试组合。
使用正交表有优点也有局限性,在实际使用过程中,可能找不到正好符合的正交表,那么我们可以选取最相近的正交表。大家在工作中多尝试,多总结经验,寻求最优解。
欢迎关注个人公众号:墨石测试攻略。我是墨石,高级测试工程师,和你分析测试技能、实战经验。
使用正交表高效地设计测试用例相关推荐
- 正交法设计测试用例的小工具:Allpairs
(我的公众号"墨石测试攻略",分享测试经验,欢迎关注!) 继上一篇<使用正交法高效地设计测试用例>,有小伙伴反馈说正交表不好找,方法不实用.这里推荐一个小工具Allpa ...
- 软件测试--利用正交表设计测试用例
输入条件如下: 姓名:填.不填 性别:男.女 学历:小学.初中.高中.专科.本科.硕士.博士 等级:普通.VIP 用正交表设计测试用例 Allpairs安装及使用 输入数据时要用tab键,或者使用ex ...
- 正交表设计法设计测试用例
注:接口测试的时候,遇到入参很多的接口,同时也要全面覆盖参数的不同情况,由此引入了正交表设计测试用例的方法. 概念:正交试验设计是研究多因素多水平的一种设计方法,它是根据正交性从全面试验中挑选出部分有 ...
- 测试理论--用正交表设计测试用例
正交试验设计(Orthogonal experimental design)是研究多因素多水平的一种设计方法,它是根据正交性从全面试验中挑选出部分有代表性的点进行试验,这些有代表性的点具备了" ...
- 用正交表设计测试用例
正交试验设计(Orthogonal experimental design)是研究多因素多水平的一种设计方法,它是根据正交性从全面试验中挑选出部分有代表性的点进行试验,这些有代表性的点具备了" ...
- 用正交表设计测试用例(转载)
查看正交表使用时发现此篇解释较详细,且讲述了"因素数不同"及"水平数不同"的情况,而此项是其他文章里未讲述及讲述不清的,转载至此,以备查看 请优先阅读原文 原文 ...
- 使用元数据设计测试用例
为什么80%的码农都做不了架构师?>>> Jaydeep Kaur在软件测试的整个软件测试生命周期(STLC),包括需求分析,测试,交付和支持方面有近四十年的经验.有了为银行, ...
- 测试思想-测试设计 测试用例设计之正交法
测试用例设计之正交法 by:授客 QQ:1033553122 什么是n阶拉丁方? 用n个不同的拉丁字母排成一个n阶方阵(n<26 ),如果每行的n个字母均不相同,每列的n个字母均不相同,即每个字 ...
- 设计测试用例的万能公式 + 6大具体方法 = 面试就像聊天?
目录 一.设计测试用例的万能公式 二.设计测试用例的具体方法 2.1.等价类 2.2.边界值 2.3.判定表(因果图的另一种形式) 2.4.场景设计法 2.5.正交法(用的少,基本不可见) 2.4.1 ...
- 【黑盒测试】 正交排列法设计测试用例
正交法设计测试用例 如何设计测试用例 一.正交表的概念 二.使用步骤 1.设计步骤 2.案例分析 三.判定表和正交表的使用场景 判定表 正交表 如何设计测试用例 在测试时,要考虑一些控件的组合情况,组 ...
最新文章
- 通过项目逐步深入了解Spring MVC(一)
- python复制列表元素_Python学习教程:Python列表赋值,复制,深拷贝及5种浅拷贝详解...
- php的integer,PHP整型 integer
- 深度神经网络关键词解释
- python数据挖掘学习笔记】十六.逻辑回归LogisticRegression分析鸢尾花数据
- 离散数学_电子科大王丽杰
- 嵌入式控制K60考试复习
- 用百宝云在线表单制作一个简单的投票系统
- 优化数据库的八种经典方式
- [PKKS19] 《Revealing Scenes by Inverting Structure from Motion Reconstructions》(CVPR2019)阅读笔记(完)
- mac上安装brew(最简易)
- 成绩在C语言中怎么表示,c语言指数函数-分数在C语言中怎么表示分数和指数形式在C语 – 手机爱问...
- Android面试你必须要知道的那些知识,已拿offer附真题解析
- 计算机术语横幅迎新,内蒙古师范大学用代码写迎新条幅,还有哪些搞笑的迎新标语?...
- 视频直播推流与拉流的实现
- 如何实现Excel多人共享与协作
- 计算机网络安全-----防火墙
- OI退役记,第五部分,CTSCAPIO2017
- 过去66年的66项最佳发明(1964~1993)
- idea最最最常用快捷键