软件测试用例篇04

进行用例篇的学习之前,再来举个栗子:

需求:用户搜索,支持拼音搜索,当输入拼音,下拉框匹配出所有的用户(通过当前拼音匹配出来的)

版本:V1.0

环境:Windows 11

软件测试用例篇04_第1张图片

操作步骤:在搜索框输入拼音查找姓名

执行结果:

预期结果:

优先级:P0

本篇目标:

学会黑盒测试用例设计方法,等价类划分法,边界值法……

  • 测试用例的基本要素
  • 测试用例的设计方法

              软件测试用例篇04_第2张图片

  • 测试用例的有效性
  • 测试用例的粒度和评价

测试用例要素(4个)*

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

测试用例要素:有没有执行结果

测试用例要素不需要执行结果,因为执行结果需要执行完测试用例才能知道,没有测试用例,自然而然就没有执行结果

测试用例好处:

1)提高测试效率,节省测试时间

2)测试用例是自动化测试用例前提

测试用例设计方法

01基于需求的设计方法

功能、非功能

参考标准:需求文档

只是针对需求进行了大概的测试

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

      微信升级

      发红包金额限制:200元

      微信领取红包时间限制:24h

金额200能不能发送成功

金额超过200的时候能不能发送成功

软件测试用例篇04_第3张图片

02等价类*

有效等价类:满足用户需求的一个数据集合(BAT offer)

无效等价类:不满足用户需求的数据集合(未知名小公司)

        比如图书馆的类:历史、数学、人文、政治、经济……

         充分理解需求->将需求分类(有效等价类,无效等价类)->针对有效等价类和无效等价类设计测试用例

等价类: 依据需求将输入(特殊情况下会考虑输出)划分为若干个等价类,从等价类中选出一个测试用例这个测试用例测试通过,则认为所代表的等价类测试通过,这样就可以用较少的测试用例达到尽量多的功能覆盖,解决了不能穷举测试的问题。       简言之:将输入数据集合划分成许多类别,测试的时候,从每一类中抽取出一个测试点,如果测试通过,此时就代表这一类测试通过。

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

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

有效等价类:6~15位

无效等价类:小于6位 && 大于15类

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

充分理解需求

划分有效等价类,划分无效等价类软件测试用例篇04_第4张图片

03边界值*

代码往往在边界处最容易出现问题的

userName{

        usernamelength = username,length

        //if(user_name_length >= 7 && user_name_length <= 14){

        if(user_name_length > 6 && user_name_length < 15) {

                //注册成功

        } else {

                //注册失败

        }

}

边界点:

        上点:边界上的点

        内点:边界内的点

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

 例一:软件测试用例篇04_第5张图片

上点:6,15 

内点:13

离点:5,16 软件测试用例篇04_第6张图片

上点:6,15

内点:7,13……(6~15之间就行)

离点:7,16 

边界值设计测试用例方法

1、充分理解需求

2、找边界点

上点:6,15 

内点:13

离点:5,16 

3、针对边界点设计测试用例 软件测试用例篇04_第7张图片

04因果图/判定表

判定表*(Decision table)是另一个表达逻辑判断的工具 

关系:

与:所有的条件必须满足,如果一个条件不满足,此时结果为假 

或:满足其中一个条件就为真,如果条件全部为假,结果就为假

恒等:条件为真,结果一定为真。 例如:动物园运来大熊猫,动物园一定有大熊猫

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

如何设计测试用例

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

2)找出输入和输出之间的对应关系

3)设计判定表

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

案例一:

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

输入:订单已提交,订单金额大于300,有红包

输出:优惠,不优惠

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

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

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

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

5)订单不提交,金额大于300,有红包,不优惠

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

7)订单不提交,金额小于300,有红包,不优惠

8)订单不提交,金额小于300,没有红包,不优惠软件测试用例篇04_第8张图片

软件测试用例篇04_第9张图片

05正交表法

什么是正交表

 名词

        因素:变量

        水平:变量取值

性质

1)每一列中各数字出现的次数都一样多

2)任何两列中的各有序数对出现的次数都一样多

软件测试用例篇04_第10张图片

如何通过正交表设计测试用例 

充分理解需求->确定因素水平->画正交表->补充正交表->将正交表转换成测试用例

eg:姓名、邮箱、密码、确认密码、验证码必须全部输入,才能进行注册

软件测试用例篇04_第11张图片

因素:姓名,邮箱,密码,确认密码,验证

水平:填写,不填写

allpirs画正交表

1、首先下载allpirs,将水平和因素填写到excel中,将excel表格复制到txt文件中,然后保存到allpirs所在目录软件测试用例篇04_第12张图片

2、cmd命令打开窗口,通过cd命令进入allpirs所在文件夹,执行一个allpirs,exe 文件名 > 结果名  生成正交表(如下):

allpairs.exe 20241017.txt > 20241017_result.txt

软件测试用例篇04_第13张图片

~:意味着此时这个取值可以是填写也可以是不填写软件测试用例篇04_第14张图片

场景设计法 

eg:追女生

软件测试用例篇04_第15张图片

eg:ETM机取款软件测试用例篇04_第16张图片

通常情况下,需要把用户经常用到的功能用到的功能模块串联到一起进行测试 

场景面试题

如何模拟弱网

可以借助许多工具,fiddle / charles 

1、打开限速模式

软件测试用例篇04_第17张图片

软件测试用例篇04_第18张图片

软件测试用例篇04_第19张图片

300:上传1KB数据,花费时间300ms

150:下载1KB数据,花费时间150ms 

此处数字越小,网速越好!!

接口如何测试

工具:Postman

针对接口的参数进行测试(传参数、不传参数、传入非法参数)

参数通过parameter,json传递


写一个冒泡排序,针对这个代码测试 

方法参数(参数类型、被给参数、参数传递为空)

异常处理

代码规范

语句覆盖

条件覆盖

语句条件覆盖

判定覆盖

……

zip命令 

功能

        打包的文件时一个不存在的文件

        命令使用正确,文件存在,文件是否被压缩

        能否一次性打包多个文件

        打包后的内容是否有缺失

        ……

界面

        打包后的zip高亮

        打包后的文件后缀名.zip

易用

        输入错误,此时有没有提示

性能

        打包一个1KB文件是多少

        打包的文件是一个20GB

        一次打包多个

        ……

水杯测试用例 

软件测试用例篇04_第20张图片

微信发红包 

测试用例考虑要素

功能,界面,性能,易用,兼容,安全,网络,中断……

功能:

        物体:这个物体主要是用来干嘛的

        软件:软件实现功能

界面:

        物体:外表、材质、大小、容量

        软件:界面,字体大小,字体颜色,页面布局

易用性:

        经验:操作简单,使用流畅;人性化

兼容性:

        物体:处理物体处理本质的功能,还有没有其他功能

        软件:操作系统,设备,浏览器版本

性能:

        物体:使用寿命

        软件:响应时间,吞吐量,并发数,CPU占用率……

安全:

        物体:物体的材质是否有毒,物体会不会对人体健康造成威胁

        软件:sql注入(大概就是输入select * from where xxx,把全表都显示出来),xss漏洞,输入有毒的脚本,密码加密保存,加密传输,权限控制,

网络:2G~5G,弱网(fiddle模拟),WIFI

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