在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
测试用例的设计方法有哪些?一般来说,测试用例的常见设计方法有六种,分别是等价类划分、边界值分析法、错误推测法、因果图方法、正交试验设计法和判定表法。下面小编将举例为大家一一说明解释这五种测试用例的设计方法,感兴趣的小伙伴赶紧接着看下去吧!
1、等价类划分:
等价类是指某个输入域的子集合.在该子集合中,各个输入数据对于揭露程序中的错误都是等效的.并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试.因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据.取得较好的测试结果.等价类划分可有两种不同的情况:有效等价类和无效等价类。
举例:我们要测试一个用户名是否合法,用户名的定义为:8位数字组成的字符。我们可以先划分子集:空用户名,1-7位数字,8位数字,9位或以上数字,非数字。然后从每个子集选出若干个有代表性的值.
2、边界值分析法:
边界值分析方法是对等价类划分方法的补充。测试工作经验告诉我,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部.因此针对各种边界情况设计测试用例,可以查出更多的错误。使用边界值分析方法设计测试用例,首先应确定边界情况.通常输入和输出等价类的边界,就是应着重测试的边界情况.应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据。
举例:假定 X 为整数,10≤X≤100,那么 X 在测试中应该取的边界值为:10,11,99,100。
3、错误推测法:
基于经验和直觉推测程序中所有可能存在的各种错误, 从而有针对性的设计测试用例的方法.错误推测方法的基本思想: 列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据他们选择测试用例-例如, 在单元测试时曾列出的许多在模块中常见的错误-以前产品测试中曾经发现的错误等, 这些就是经验的总结。还有, 输入数据和输出数据为0的情况。输入表格为空格或输入表格只有一行-这些都是容易发生错误的情况。可选择这些情况下的例子作为测试用例.
举例:错误推测法没有固定的形式,依靠的是经验和直觉,很多时候,我们都会不知不觉的使用到。
4、因果图方法:
前面介绍的等价类划分方法和边界值分析方法,都是着重考虑输入条件,但未考虑输入条件之间的联系, 相互组合等-考虑输入条件之间的相互组合,可能会产生一些新的情况-但要检查输入条件的组合不是一件容易的事情, 即使把所有输入条件划分成等价类,他们之间的组合情况也相当多-因此必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例-这就需要利用因果图(逻辑模型)-因果图方法最终生成的就是判定表-它适合于检查程序输入条件的各种组合情况.
举例:某软件规格说明书包含这样的要求:第一列字符必须是A或B,第二列字符必须是一个数字,在此情况下进行文件的修改,但如果第一列字符不正确,则给出信息L;如果第二列字符不是数字,则给出信息M。
5、正交试验设计法:
有时候,可能因为大量的参数的组合而引起测试用例数量上的激增,同时,这些测试用例并没有明显的优先级上的差距,而测试人员又无法完成这么多数量的测试,就可以通过正交表来进行缩减一些用例,从而达到尽量少的用例覆盖尽量大的范围的可能性。
举例:某所大学通信系共2个班级,刚考完某一门课程,想通过“性别”、“班级”和“成绩”这三个查询条件对通信系这门课程的成绩分布,男女比例或班级比例进行人员查询。按照传统的方式,我们将会穷举所有的组合,来编写测试用例,组合个数是2*2*2=8。当组合条件不多的时候,穷举暂时没问题,但是,一旦条件多了,组合个数就会以指数形式增长。这个时候,就要用到正交表了,通过选出有代表性的测试实例,达到以少数代替全面的效果。
6、判定表法:
判定表法又称为策略表,基于策略表的测试,是功能测试中最严密的测试方法。该方法适合于逻辑判断复杂的场景,通过穷举条件获得结果,对结果再进行优化合并,会得到一个判断清晰的策略表。
举例:某公司的对客户分类标准如下:顾客每次订货额在 1000元以上(含1000元),信誉好的,订单设“优先”标志;信誉不好,但是老客户的,订单设“优先”标志;信誉不好,但是新客户的,订单设“正常”标志;每次订货额在 1000元以下,订单设“正常”标志。
因为穷举了所有条件,所以可以说这个判断是100%正确的。下一步是对这个表进行合并优化。例如,从编号为1,2的列可以看出,顾客订单>=1000,信誉好,不管是新顾客还是老顾客,都设为优先,这样一来,我们就可以得到更清晰的逻辑判断,也可以更好的协助我们编写测试用例。而决策表,对于开发人员来说一样有用。
以上就是测试用例的六种设计方法的举例说明。可能还有部分小伙伴没有看懂,大家可以上博学谷官网在线学习软件测试的所有核心知识点,除了视频学习外,还有名师在线答疑,有学习需求的小伙伴赶紧来体验吧!
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
软件测试人员必须掌握的知识--软件测试分类
软件测试是在产品上线前模拟真实使用场景的测试环节,根据产品不同、使用环境不同,软件测试人员需要掌握不同的测试方式。那软件测试到底有哪些途径呢?下面小编为大家分享一下软件测试人员必须掌握的知识--软件测试分类。
7504
2019-08-08 10:23:27
女生可以做软件测试吗?
在互联网行业,女生大部分都是从事UI或者运营的工作。也有少部分从事编程或者测试的工作。由于编程和测试工作时间长,工作强度比较大,甚至需要的专业水平也较高,很多人就认为女孩子不适合做这个行业。其实并不是这样的,在软件测试行业,女生虽然有有一定的弊端,但相对男生,女生更适合做软件测试。下面就为大家详细分析一下为什么女生更加适合!
8372
2019-06-05 16:44:52
零基础小白软件测试入门教程
零基础小白在软件测试入门的时候,往往会感到十分的迷茫,不知道从哪里开始学习。因此小编为软件测试初学者,准备了一份软件测试入门教程。该教程内容包括,软件测试是什么,要学什么,怎么学三大主题,旨在帮助大家从入门到精通软件测试。
6274
2019-08-28 15:13:36
软件测试缺陷包含哪些状态?缺陷生命周期分析
在软件测试中,缺陷生命周期常常是绕不开的话题。本文就来详细为大家讲讲,软件测试缺陷的八种状态,缺陷的等级、缺陷单应该包含的内容等等。对软件测试的基础理论知识感兴趣的小伙伴,现在就赶紧看下去吧!
16113
2019-10-22 14:45:34
软件测试工程师为什么要写测试用例?
软件测试工程师为什么要写测试用例?相信从事软件测试行业的从业者来讲,测试用例并不陌生。因为测试用例不仅仅是一组简单的文档,它包含前提条件、输入、执行条件和预期结果等等重要内容,并且能够完成一定的测试目的和需求。下面本文将从测试用例的定义、作用和做法三方面,带大家全面认识测试用例。
6790
2020-02-10 13:04:20
热门文章
- 前端是什么
- 前端开发的工作职责
- 前端开发需要会什么?先掌握这三大核心关键技术
- 前端开发的工作方向有哪些?
- 简历加分-4步写出HR想要的简历
- 程序员如何突击面试?两大招带你拿下面试官
- 程序员面试技巧
- 架构师的厉害之处竟然是这……
- 架构师书籍推荐
- 懂了这些,才能成为架构师 查看更多
扫描二维码,了解更多信息
