测试用例基础

测试用例概要

测试用例要素

测试环境,操作步骤,测试数据,预期结果

测试用例好处

提高测试效率,节省测试时间
测试用例是自动化测试用例的前提

测试用例设计方法

1.基于需求的设计方法

需求文档  -->   梳理需求(掌握需求) --> 针对文档设计测试用例(基于需求设计测试用例)

例: 微信现在有一个发红包的需求,发红包金额限制: 200 元,微信领取红包限制: 24h

基于需求设计测试用例
金额为 200元 能不能发送成功?
金额超过 200元能不能发送成功?
金额为0元能不能发送成功?
............
这样的测试用例还有很多很多,是我们头脑风暴想出来的,因此不合理,只能对产品进行大概的设计

以俺之前写的博客系统的注册页面为例,基于需求的设计方法设计测试用例

测试用例基础_第1张图片

2.等价类

有效等价类: 满足用户需求输入集合
无效等价类: 不满足用户需求输入集合

以上述博客系统注册的用户名为例:

用户名  | 必填,录入用户名 | 6至15

有效等价类 : 6~15位
无效等价类 : 小于6位或大于15位

等价类思想设计测试用例步骤

1.充分理解需求
2.划分有效等价类,划分无效等价类
3.从有效等价类抽取其中一个数据进行测试用例设计,从无效等价类抽取其中一个数据进行测试用例设计

测试用例基础_第2张图片

3.边界值

 边界点:

1.上点: 边界上的点
2.内点: 边界内的点
3.离点: 边界值附近的一个点(闭区间,区间外距离上点最近的点,开区间,区间内距离上的最近的点)

测试用例基础_第3张图片

 测试用例基础_第4张图片

边界值设计测试用例方法

1.充分理解需求
2.找上点,内点,离点
3.针对边界点设计测试用例

测试用例基础_第5张图片

 4.判定表

判定表是一种逻辑表达判断的工具

关系:
与: 所有的条件必须满足,如果一个条件不满足,结果为假
或: 满足其中一个条件,结果就为真
非: 条件为假,结果为真
恒等: 条件为真,结果一定为真

如何利用判定表法设计测试用例?

1.分析所有可能的输入输出
2.找出输入与输出之间的关系
3.设计判定表
3.把判定表对应到每一个测试用例

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

输入: 订单已提交,订单金额大于300,有红包
输出: 进行优惠,不进行优惠

输入和输出对应的关系

1.订单已提交,金额大于300,有红包       优惠
2.订单已提交,金额大于300,没有红包    优惠
3.订单已提交,金额小于300,有红包        优惠
4.订单已提交,金额小于300,没有红包    不优惠
5.订单未提交,金额大于300,有红包       不优惠
6.订单未提交,金额大于300,没有红包    不优惠
7.订单未提交,金额小于300,有红包        不优惠
8.订单未提交,金额小于300,没有红包     不优惠

判定表

测试用例基础_第6张图片 测试用例基础_第7张图片

 5.正交表法

在一些情况下使用判定表法设计的测试用例太多

因素:此次需求变量(输入)
水平:变量的取值

正交表性质:

每一列各个数字出现的次数一样多
任何俩列中各有序数对出现的次数一样多

通过正交表设计测试用例:

1.充分理解需求
2.确定因素和水平
3.画正交表
4.补充正交表
5.将正交表转换成测试用例

例:需求:姓名,邮箱,密码,确认密码,验证码必须全部输入,才能注册

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

6.场景设计法

主事件流:
次事件流:在主事件流的每一个环节都可能出现其它情况

ATM机取款

主事件流: 插卡---选择语言----输入密码----选择业务----输入取款金额---等待吐钱----取卡

次事件流: 卡消磁/卡不是银行卡------取款失败
                 插卡---选择语言----密码错误---取款失败
                 插卡---选择语言---输入密码---存钱----取款失败
                 .......................

如何模拟弱网?

借助Fiddler工具

在规则栏打开限速模式

测试用例基础_第8张图片

在规则栏中,点击用户规则

测试用例基础_第9张图片

 修改用户限速规则

测试用例基础_第10张图片

针对水杯设计测试用例

测试用例万能公式:功能,性能,界面,易用,兼容,安全,网络

功能: 物体:这个物体主要用来干嘛..软件: 软件实现了哪些功能

界面: 物体:外观,材质,大小,容量....软件:界面,字体大小,页面布局,图片

易用: 操作简单,使用流畅,符合人体工程学

性能: 物体:使用时间,寿命,耗能.. 软件:响应时间,吞吐量,并发数,CPU占用率

兼容: 物体:除了本职功能,还有没有其它功能...软件:操作系统,设备,浏览器版本

安全: 物体:材质是否有毒,是否对健康或环境造成威胁...软件:sql注入,漏洞

网络: 软件:2G,3GL4G,5G弱网,WIFI

测试用例基础_第11张图片

微信发朋友圈

测试用例基础_第12张图片

微信发红包

测试用例基础_第13张图片

你可能感兴趣的:(测试用例)