
🔥草莓熊Lotso:个人主页
❄️个人专栏:《C++知识分享》《Linux 入门到实践:零基础也能懂》
✨生活是默默的坚持,毅力是永久的享受。
🎬博主简介:

如果说 “万能公式” 是设计测试用例的宏观框架,那么具体的设计方法就是填充这个框架的 “血肉”。面对复杂的业务逻辑和海量的输入组合,单纯依靠经验往往会顾此失彼。本文将带你深入学习业界公认的 6 大测试用例设计方法(等价类、边界值、正交法、判定表、场景法、错误猜测法),并结合 “邮箱注册” 等经典案例,教你如何在实战中精准、高效地设计出覆盖全面的测试用例集。

基于需求的设计方法也是总的设计测试用例的方法,在工作中,我们需要参考需求文档/产品规格说明书来设计测试用例。
测试人员接到需求之后,要对需求进行分析和验证,从合理的需求中进⼀步分析细化需求,从细化的需求中找出测试点,根据这些测试点再去设计测试用例。
以该注册邮箱账号需求为例,我们来设计测试用例。


上述设计的测试用例,存在用例还未完全设计完成,“姓名必填,6~15位的字符类型”,这样⼀个
具体的需求如果我们直接使用穷举法来进行测试的话需要花费大量的时间,显然是不符合企业测试要求的。
依据需求将输入(特殊情况下会考虑输出)划分为若干个等价类,从等价类中选出一个测试用例,如果这个测试用例测试通过,则认为所代表的等价类测试通过,这样就可以用较少的测试用例达到尽量多的功能覆盖,解决了不能穷举测试的问题。
--学到这里我们下先对上面的一些用例进行完善

其它的一些地方与这个类似,大家可以自己下来再继续完善
缺点: 等价类只考虑输入域的分类,没有考虑输出域的组合,需要其它的设计方法补充
边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法。通常边界值分析法是作为对等价类划分法的补充,这种情况下,其测试用例来自等价类的边界。
边界值包含:边界值+次边界值

继续将上述的用例通过边界值补充完整

场景法是模拟用户在实际使用软件过程中可能遇到的各种场景,通过对这些场景的分析来设计测试用例。这里的 “场景” 通常是指用户为了达到某个目标,在软件系统中进行的一系列操作步骤 。
场景法⼀般包含基本流和备用流,从⼀个流程开始,通过描述经过的路径来确定的过程,经过遍历所有的基本流和备用流来完成整个场景。场景主要包括4种主要的类型:正常的用例场景,备选的用例场景,异常的用例场景,假定推测的场景
应用步骤:

优点:
缺点:
我们再拿之前的邮箱注册用例来演示一下


补充测试小问题:


正交表:
如图最简单的正交表是L(4)(2(3)),含意如下:“L”代表正交表;L 下角的数字“4”表示有 4 横行,
简称行,即要做四次试验;括号内的指数“3”表示有3 纵列,简称列,即最多允许安排的因素是3
个;括号内的数“2”=表示表的主要部分只有2 种数字,即因素有两种水平1与2。

正交表的构成:因素数、水平数、行数。
正交表的性质:

根据正交表的性质,⼀般人很难通过手动设计出正交表;
正交表设计测试用例的步骤如下: 1.找到因素和水平,我们还是拿之前的邮箱注册为例

2.将因素和水平写入excel表格中(表格不需要保存)--不推荐其它软件,格式问题

3.在allpairs.exe同级文件下创建一个txt文件,将excel表格复制到txt中,不要有其它操作直接保存
4.使用allpairs.exe工具对txt生成正交表文件

5.根据生成好的正交表来编写测试用例,继续将重要的用例补全

通过具体的方法能够将测试用例设计的更加完整和规范。 需求中会存在各种各样的场景,现在我们把需求改成如下的要求: 用户输入的账号中包含admin字符,或者通过内部链接进入注册页面,提交注册按扭成为管理员身份;反之无管理员身份。
通过这个需求可以看出,不同的组合操作可能对应不同的结果。采用正交法无法解决这样的问题。而正交法能够解决需要考虑输入之间的组合关系对应不同结果的场景。

通过该图,可以把所有条件对应的结果清晰的表达出来。我们就需要借助该表来清晰的写出测试用
例。
确认了步骤后,我们使判定表法进一步对上述需求进行测试用例的设计:
1.确认需求中输入条件和输出条件
2. 找出输入条件和输出条件之间的关系
输入条件:ac ab bc abc a b c 非abc 对应结果:1 2 1 1 2 2 2 2
3.画判定表

4.根据判定表编写测试用例

错误猜测法是对被测试软件设计的理解,过往经验以及个人直觉,推测出软件可能存在的缺陷,从而针对性地设计测试用例的方法。
这个方法强调的是对被测试软件的需求理解以及设计实现的细节把握,还有个人的经验和直觉。
错误推测法和目前流行的“探索式测试方法”的基本思想⼀致,这类方法在敏捷开发模式下的投入产
出比很高,被广泛应用于测试
这个方法的缺点是难以系统化,并且过度依赖个人能力。
还是根据邮箱账号注册的案例,根据场景法来设计测试用例:
以注册为例
注意:笔试的时候编写测试用例需要使用传统的编写方式,须完整写出测试用例以及必要要素。
⾯试的时候只需要按照思维导图模式说出测试用例。
--上面介绍了设计测试用例以及方法时介绍过web场景用例的设计。接下来看看不同题型用例的设计吧。
存在功能可以在命名行中使用zip/unzip命令对文件进行解压缩,这样的场景如何来设计测试用例

zip命令: 功能测试:
界面测试:
性能测试:
兼容性测试:
易⽤性测试:
安全性测试:
我们现在对一个博客系统进行接口测试,现在我们来看看。
接口请求示例如下:

通过curl命令我们可以在命令行上请求接口,并对接口进行测试。
如何对当前接口进行测试呢?
类别 | 具体内容 |
|---|---|
不同的请求方式 |
|
参数组合 |
|
不同的参数格式 |
|
接口性能 |
|
对接口进行测试时,使用curl命令进行接口测试在操作上并不方便,实际在使用中我们常常使用接口测试工具来保证测试的质量和效率,这里推荐使用postman
整体操作流程图:





添加请求的方式:
1.手动填写
2.复制请求并添加到postman中




3.接口管理
是否每次都要重新执行一遍填写请求的步骤呢?只需⼀步,就可以在postman中保存经常要使用到的接口


往期回顾:
从 “懵圈” 到 “秒杀”:测试用例设计万能公式,小白也能直接套用!
结语:理论是行动的先导。这 6 种方法各有侧重,没有优劣之分。真正的高手,在于能够根据具体需求,灵活地选择和组合最适合的方法,将理论知识转化为解决实际问题的能力。不断练习和总结,你也能成为一名测试用例设计的架构师。
✨把这些内容吃透超牛的!放松下吧✨ ʕ˘ᴥ˘ʔ づきらど