【软件测试】测试用例的设计方法

目录

1.测试用例的基本要素

2.测试用例的设计方法

2.1基于需求的设计方法

163邮箱注册,登录模块测试用例设计

2.2等价类

2.3边界值

2.4判定表

淘宝618活动测试用例

2.5正交排列

注册测试用例

2.6场景设计法

ATM取款机示例

2.7错误猜测法

3.测试用例万能公式

水杯测试用例设计

微信发送朋友圈测试用例设计


1.测试用例的基本要素

测试用例(Test Case)是为了实施测试而向被测试的系统提供的一组集合,这组集合包含:测试环 境、操作步骤、测试数据、预期结果等要素。
好的测试用例是一个不熟悉业务的人也能依据用例来很快的进行测试
评价测试用例的标准:对比好坏用例的评价标准
  • 用例表达清楚,无二义性。。
  • 用例可操作性强。
  • 用例的输入与输出明确。一条用例只有一个预期结果。
  • 用例的可维护性好。
  • 用例对需求的覆盖率高

2.测试用例的设计方法

2.1基于需求的设计方法

基于需求设计测试用例是测试设计和开发测试用例的基础,第一步就要分析测试需求,验证需求是否正 确、完整、无二义性,并且逻辑自洽。在需求正确的基础上细化测试需求,从测试需求提炼出一个个测 试点或者测试项,然后根据每一个测试点进行测试用例的设计。

 在分析测试需求时,一般分为功能测试需求非功能测试需求。

功能测试需求:

  • 业务流程(软件规格说明书)
  • 界面相关(UI设计稿)
  • 易用性(测试人员经验)

非功能测试需求:

  • 兼容性
  • 安全性
  • 性能

163邮箱注册,登录模块测试用例设计

①将大需求拆分为小需求:登录,注册

②将子需求划分为功能相关模块和非功能相关模块

功能模块(一部分示例):

业务流程:账号正确,密码正确,登录成功

                  账号错误,密码错误,登录失败

界面相关:页面布局美观

                  文字,图片合适

易用性:输入账号密码,键入回车即可登录

非功能模块(一部分示例):

兼容:移动端和pc端都能使用

性能:接口用户并发数是不是符合预期

安全:密码加密展示

网络:2G,3G,4G都能使用

以登录为例,设计测试用例图:

2.2等价类

依据需求将输入(特殊情况下会考虑输出)划分为若干个等价类,从等价类中选出一个测试用例,如果这个测试用例测试通过,则认为所代表的等价类测试通过,这样就可以用较少的测试用例达到尽量多的 功能覆盖,解决了不能穷举测试的问题。
  • 有效等价类:对于程序的规格说明书是合理的、有意义的输入数据构成的集合,利用有效等价类验证程序是否实现了规格说明中所规定的功能和性能 (满足用户需求的)
  • 无效等价类:根据需求说明书,不满足需求的集合。(不满足用户需求的)

思考一下,如何针对6-15位长度设计测试用例?

2.3边界值

边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法。通常边界值分析法是作为对等价类划分法的补充,这种情况下,其测试用例来自等价类的边界。
日常语言中的 " 边界 " 漏洞
考完试发成绩了 , 老师布置寒假作业 : 超过 60 分的 , 所有题目抄写 1 , 低于 60 分的 , 所有题目抄写 3 .
于是小明就没有写作业 ~~, 因为他刚好 60
这种情况下,就需要关注边界值了。
边界点:
上点:边界上的点
内点:边界内的点
离点:上点附近的一个点(如果是闭区间,则为边界外的点,如果是开区间,则为边界内的点)
例如:区间[6,15]

上点:6,15

内点:10(也可以为11,12等)

离点:5,16

设计测试用例:

1.充分理解需求

2.找边界点

3.针对边界点设计测试用例

例如:要求用户名的长度为6-15位

找到此要求的上点,内点,离点,从而设计测试用例。

2.4判定表

判定表是一种表达逻辑判断的工具。(通俗来讲,就是一个表格,表格里面有条件,有结果)。

关系:

恒等:条件为真,结果一定为真

非:条件为假,结果则为真

与:两个条件都为真,结果才为真,有一个条件为假,结果就为假

或:两个条件都为假,结果才为假,有一个条件为真,结果就为真

设计测试用例:

1.分析所有可能的输入和可能的输出

2.找出输入与输出之间的对应关系

3.根据输入和输出确定判定表

4.把判定表对应到每一个测试用例

淘宝618活动测试用例

假设业务单据的处理规则为:淘宝618活动,订单已提交,订单合计金额大于300元或有红包,则进优惠

①输入:订单提交,订单金额,红包

   输出:优惠,不优惠

②关系:订单已提交,订单金额大于300,有红包,有优惠

              订单已提交,订单金额大于300,没有红包,有优惠

              订单已提交,订单金额小于300,有红包,有优惠

              订单已提交,订单金额小于300,没有红包,没有优惠

              订单没有提交,不优惠

③判定表

④测试用例

2.5正交排列

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

名词解释:
因素 Factor ):在一项试验中,凡欲考察的变量称为因素(变量)
水平(位级) Level ):在试验范围内,因素被考察的值称为水平(变量的取值)
正交表的构成:
行数 (Runs) 正交表中的行的个数,即试验的次数 , N 代表。
因素数 (Factors) 正交表中列的个数,用 C 代表。
水平数 (Levels) 任何单个因素能够取得的值的最大个数。正交表中的包含的值为从 0 到数 水平数 -1” 或从 1 水平数 ,用 T 代表。

正交表的表示形式: L=行数(水平数*因素数) L=N(TC)

正交表的两条性质:
  • 每一列中各数字出现的次数都一样多。
  • 任何两列中的各有序数对出现的次数都一样多。
正交法设计测试用例的步骤:
1 、有哪些因素(变量)
2 、每个因素有哪几个水平(变量的取值)
3 、选择一个合适的正交表
4 、把变量的值映射到表中
5 、把每一行的各因素水平的组合作为一个测试用例
6 、加上你认为可疑且没有在表中出现的用例组合

注册测试用例

1 、因素:姓名、邮箱、密码、确认密码、验证码
2 、水平:填写、不填写

3.产生正交表

4.补充测试用例

姓名、邮箱、密码、确认密码、验证码都不填写 

2.6场景设计法

现在的软件几乎都是用事件触发来控制流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果就形成事件流。该方法可以比较生动地描绘出事件触发时的情景,有利于测试设计者 设计测试用例,使测试用例更容易理解和执行。
分类:
主事件流:用户经常操作的场景
次事件流:此事件流基于主事件流
设计测试用例:
1.确定主事件流
2.找到次事件流
3.将事件转换为测试用例

ATM取款机示例

主事件流:插卡 -> 输入密码 -> 选择业务 -> 输入取款金额 -> 出钞 -> 取卡

次事件流则根据主事件流延申出来呢。

 

2.7错误猜测法

错误猜测法是对被测试软件设计的理解,过往经验以及个人直觉,推测出软件可能存在的缺陷,从而针对性地设计测试用例的方法。
这个方法强调的是对被测试软件的需求理解以及设计实现的细节把握,还有个人的经验和直觉。
错误推测法和目前流行的 探索式测试方法 的基本思想一致,这类方法在敏捷开发模式下的投入产出比很高,被广泛应运于测试。
这个方法的缺点是难以系统化,并且过度依赖个人能力。

3.测试用例万能公式

测试用例万能公式即基于需求的设计方法。

界面,性能,易用性,安全,兼容,功能

这里使用万能公式设计两个简单测试用例~

水杯测试用例设计

微信发送朋友圈测试用例设计

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值