软件测试第一阶段:web前端技术基础-9- 测试用例设计方法

2023-11-06

一丶测试用例

测试用例:

  • 将要进行的测试工作具体化,并且记录到一个文件中,一般情况下是一个excel(表格
  • 在测试用例中,明确的指定了每一步要做什么操作    期望得到什么结果

测试工作

  • 等程序员完成代码,此时可以进行前期准备工作 也就是编写测试用例,将需要测试的每一项都填到表格中
  • 当程序员完成了代码,此时就可以进行测试工作,也就是根据测试用例(表格中的内容)一项一项的进行测试

测试用例的基本构成

第一部分:测试用例编号

  • 编号必须唯一
  • 编号的构成可以写成: 项目名-模块名-编号 
  • 例如上边的就是一个测试网站登录模块, JD-登录-001 (测试的是京东网站,登录模块,第一条测试用例)

第二部分:模块名

第三部分:优先级

  • 用于测试正常的功能用例,优先级要高一些
  • 一般是用P1 P2 P3 来表示优先级
  • 数字越小,优先级越高

第四部分:用例标题

  • 在用例标题中,需要说明这条测试用例的功能以及预期出现的结果

第五部分:测试步骤

  • 是指定这条测试用例该如何操作和执行

第六部分:预置条件

第七部分:测试数据

  • 在进行测试的时候,输入什么数进行测试
  • 这些数据中既有满足条件的数据,也有不满足条件的数据

第八部分:预期结果

  • 是指这条用例希望得到的结果

二丶等价类方法

补充:

  • 其实设计测试用例的方法有很多

穷举测试

  • 将所有可能的数据都成测试一遍
  • 但是实际上可能的数据有很多很多,这种方法不可行

等价类:

  • 分析测试的数据,找出其中的规律,然后再从其中的规律找出有特点的数字进行测试就可以了
  • 通过划分等价类,可以避免进行穷举测试

等价类的种类

  • 有效等价类
    • 满足条件的数据,就是属于有效等价类
    • 例如:找6-10位长度自然数: 123456
  • 无效等价类
    •  不满足条件的数据,就是属于无效等价类
    • 例如:找6-10位长度自然数: 12345、12345a

用等价类方法设计测试用例步骤

第一步:分析需求

  • 通过分析客户所提出了需求,判断项目需要达到什么样的效果

第二步:划分等价类(也就是找到有效和无效的数据)

  • 案例:找6-10位长度的自然数
    • 有效等价类:比较好找   123456  ,1234567889
    • 无效等价类:相对比较复杂,可以从以下几点来思考
      • 数据长度不符合:长度过长,长度过短
      • 数据内容不符合
      • 数据是否为空
      • 数据是否重复

第三步:结合等价类设计测试用例

  • 有几条等价类,就根据等价类 来设计测试用例

等价类的适用场景

  • 搜索框
  • 登录框
  • 注册页面

案例1:判断QQ是否在合理的范围(6-12位)

 案例2:登录qq邮箱

要求:

  • 用户输入账号和密码
  • 邮箱的名字:6-20位字符,支持数字、字母、下划线,但是名字不能都是下划线
  • 邮箱的密码:6-10位

 

 三丶边界值方法

  • 在日常的测试工作,经常发现,在数据的临界值位置是经常出现bug的,因此这种位置就应该作为我们 重点的测试对象

案例:二位数加法器:

计算的范围:-99~99

计算的方法:加法

边界值:

  • 有效等价类和无效等价类的边界
  • 这也是一种黑盒测试方法

边界值的三个概念:

  • 上点:边界值上面的这个点,就是上点
  • 内点:有效等价类中的任意一个点
  • 离点:边界值相邻的两个点

 数学表示方法

  • [ 大于等于
  • ] 小于等于
  • ( 大于
  •  ) 小于

 边界值的使用场景:

  • 项目中出现了<,>,=等之类的符号
  • 项目中出现了大于,等于,小于等之类的字样或者描述

案例:判断qq是否在合理的范围(6-12位),结合边界值进行设计测试用例

数学表达式表示 数学表示 上点 内点 离点
大于等于6并且小于等于12 [6,12] 6,12 8 5 ,7 ,11,13

 边界值的优化

  • 必须保留的点:上点、离点中的无效等价类中的点、内点,一共是5个点
  • 优化后结果如下

 

四丶判定表方法

判定表:

  • 以表格的形式来组合多个条件
  • 通过判定表可以综合考虑多个条件的输入和输出结果之间的关系

案例:手机通话

条件

  • 是否欠费:欠费,不欠费
  • 是否开机:开机,关机

条件组合:

条件1:是否欠费         条件2:是否开机         结果

  欠费                              关机                     不能通话

  欠费                              开机                     不能通话

 不欠费                           关机                     不能通话

 不欠费                           开机                      能通话

转换为表格形式:

  条件1:是否欠费           欠费           欠费        不欠费         不欠费     
  条件2:是否开机      不开机        开机       不开机      开机   
      结果     不能通话   不能通话  不能通话    能通话

概念:

  • 条件桩:所有可能出现的条件,例如上例中,有两个条件:是否欠费、是否开机
  • 动作桩:所有可能出现的值,例如上例中,有四个值:欠费、不欠费、开机、关机
  • 条件项:这是条件桩中的一个或者多个 动
  • 作项:这是动作桩中的一个或者多个值

等价类

  • 有效
  • 无效

在判定表中,表示有效和无效有俩种表示方式

  • 方式1:用字母表示
    • 有效等价类:Y
    • 无效等价类:N
  • 方式2:用数字表示
    • 有效等价类:1
    • 无效等价类:0

基于判定表的方式设计测试用例的步骤

  1.  第一步:首先确定条件桩
  2. 第二步:确定动作桩
  3. 第三步:对条件桩进行组合
  4.  第四步:确定条件组合的结果
  5.  第五步:根据结果写测试用例

案例:手机通话

  • 条件: 是否欠费:欠费、不欠费
  • 是否开机:开机、关机

第一步:首先确定条件桩

  • 是否欠费
  • 是否开机
  • 这里是有两个条件,那么就是在表格中写入两行内容,每行代表一个条件

第二步:确定动作桩

  • 一共有四种动作,每个条件桩中有2个,
  • 一共有四个动作 欠费、不欠费 开机、关机

第三步:对条件桩进行组合

  • 将每个条件的每个值都和另外一个条件的每个值进行组合

第四步:确定条件组合的结果

这里一行就是一个测试用例

 第五步:根据结果写测试用例

思考:条件数量,和测试用例的数量是什么关系

条件越多,得到的测试用例的数量越多

  • 有两个条件的话,得到的测试用例数 2**2 = 4
  • 有三个条件的话,得到的测试用例数 2**3 = 8
  • 有四个条件的话,得到的测试用例数 2**4 = 16

五丶因果图方法

  • 以图形的方式来表示多个不同的条件/输入以及 对应最终结果的关系
  • 也是一种黑盒测试方法

适用场景:

  • 有多个输入条件的情况下

概念

  • 因:条件
  • 果:结果

符号:

  • - 恒等,表示当条件成立的时候,结果成立;     当条件不成立的时候,结果不成立

  • ~ 相当于NOT,也就是逻辑非,表示当条件成立的时候,结果不成立;当条件不成立的时候,结果成立

  • v 相当于OR,也就是逻辑或,表示当多个条件中,有至少一个条件成立的时候,结果成立; 当全部条件都不成立的情况下,结果不成立

  • ^ 相当于AND,也就是逻辑与,表示多个条件必须全部都成立,结果成立;  当有任意一个条件不成立的时候,结果不成立

结合因果图设计测试用例的步骤

  • 第一步:分析需求
  • 第二步:画因果图
  • 第三步:将因果图转换成为判定表
  • 第四步:结合判定表写测试用例

案例:让用户输入内容,要求输入的第一个字符是数字5或者是7 ,第二个字符是字母

  • 如果第一个字符不正确输出结果是L
  • 如果第二个字符不正确输出结果是M
  • 如果都正确,输出Q

绘制因果图

 讲因果图转换为判定表

六丶正交方法

  • 这种方法同样是用在多个输入和多个输出的情况

 正交法:

  • 本质上是用数学中的数据统计【统计学】中的方法进行测试
  • 通过正交法可以用少量测试用例来覆盖大多数的测试情况

概念:

  • 因素(k):表示的是输入的条件,每列是一个因素
  • 水平(m):表示的是输入条件后所得到的结果,表格中的每个小格就是一个结果
  • n:测试用例数
  • 表示正交表的:k因素m水平,例如5因素3水平(5个条件每个因素有种结果就是3水平)    

基于正交表法设计测试用例的步骤

  1. 需求分析
  2. 确定因素和水平(其实就是找出有几个输入条件和有几个结果)
  3. 根据因素和水平的数量,确定选择那个正交表
  4. 将具体的值替换掉正交表中的内容
  5. 然后在根据正交表设计测试用例

案例:设置字体属性

  • 字体:仿宋、楷体、微软雅黑
  • 字符样式:粗体、斜体、下划线
  • 颜色:红色、黑色、蓝色
  • 字号:20号、30号、40号

第一步:需求分析

  • 要测试4个内容也就是有4个输入条件

第二步:确定因素和水平(其实就是找出有几个输入条件和有几个结果)

  • 有4个输入,就是有4个条件,也就是有4个因素
  • 每个因素都有三种结果,那么就是3水平
  • 4因素3水平

第三步:根据因素和水平的数量,确定选择4因素3水平的正交表

第四步:将具体的值替换掉正交表中的内容

  • (1)字体: 仿宋(1)、 楷体(2)、 微软雅黑(3)
  • (2)字符样式:粗体(1)、 斜体(2)、 下划线(3)
  • (3)颜色: 红色(1)、 黑色(2)、 蓝色(3)
  • (4)字号: 20号(1)、 30号(2)、 40号(3)

 第五步:根据正交表写测试用例

  • 正交表中的每一行,都是一个测试用例

七丶场景法

  • 又称为流程图法,用图形的方式来表示测试的条件和输出的结果
  • 概念:模拟用户对软件进行操作的场景
  • 这种方法更合适测试多个模块

场景法适用在测试过程中的那个阶段?

  • 集成测试
  • 系统测试
  • 验收测试

不适用在单元测试中 因为单元测试是对一个模块进行测试

场景法设计测试用例的步骤:

  • 第一步:分析需求
  • 第二步:绘制流程图
  • 第三步:根据流程图写测试用例

流程图中的符号

 

绘图软件:

  • visio                (一开始的时候都在用)
  • 亿图                (收费软件)

案例:电商平台购物流程

  1. 注册
  2. 登陆
  3. 商品列表
  4. 购物车
  5. 付款
  6. 订单管理

流程图如下:

 

设计测试用例:

  • 流程图中的一条线就是一个测试用例

1 - 2 - 3 - 4 - 5 - 5.1 - 6

1 - 2 - 3 - 4 - 5 - 5.2 - 6

1 - 2 - 3 - 4 - 5 - 5.3 - 6

1 - 2 - 2 - 2

1 -2 - 2 - 3 - 4 - 5 - 5.1 - 6

1 -2 - 2 - 2 - 3 - 4 - 5 - 5.1 - 6

八丶错误推断法

  • 凭借经验来做的
  • 原理就是根据同类型的软件的具有的bug,判定这个目标软件也有这个bug

使用场景:

  • 时间、资源不充足情况才会被使用
  • 使用这种方法,通常都是做初测

总结:

  • 等价类:测试的内容有输入功能,而且输入的内容之间没有关系
  • 边界值:输入的内容有边界,有类型、大小、长度的要求
  • 判定表/因果图:有多种输入的内容,而且有多种输出结果
  • 正交法:测试的数据和条件特别多
  • 场景法:整合测试多个功能,需要使用场景法
  • 错误推断法:时间、资源补不充足时用;仅仅需要做初测

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

软件测试第一阶段:web前端技术基础-9- 测试用例设计方法 的相关文章

随机推荐

  • 29_content 阶段的concat 模块

    文章目录 提升性能 content 阶段的 caoncat 模块 concat 模块的指令 示例配置 提升性能 content 阶段的 caoncat 模块 功能 当页面需要访问多个小文件时 把它们内容合并到一次http 响应中返回 提升性
  • 数组排序的方法?

    1 sort排序 let arr 1 2 3 4 5 6 7 8 9 0 9 8 7 6 3 4 5 5 var res console log arr 排序前 1 2 3 4 5 6 7 8 9 0 9 8 7 6 3 4 5 5 arr
  • SSD目标检测算法原理(上)

    目录 一 目标检测概述 1 1 项目演示介绍 1 2 图片识别背景 1 3 目标检测定义 二 目标检测算法原理 2 1 任务描述 2 2 目标检测算法必备基础 2 3目标检测算法模型输出 目标检测 overfeat模型 R CNN模型 候选
  • h2database源码解析-查询优化器原理

    目录 一 成本计算规则 二 单表查询 三 多表关联查询 一 成本计算规则 h2的查询优化器基于成本的 因此在执行查询前 会基于成本计算使用哪个索引 如果涉及多表关联 还会计算不同表关联顺序的成本 最终基于最小成本得出执行计划 单表查询时 遍
  • 树莓派驱动开发简单案例完整过程(动态加载驱动)

    1 下载树莓派os镜像 https www raspberrypi org downloads raspbian 2 使用命令 uname a 查看树莓派内核 Linux raspberrypi 4 19 118 v7 1311 SMP M
  • JQuery筛选器

    jQuery提供了强大的选择器让我们获取对象 在这边 我人为地将jQuery选择器分为两大部分 选择对象和筛选条件 选择对象表示要获取什么对象 筛选条件是对获取的对象进行筛选 最终留下符合某些特征的对象 1 选择对象1 基本 id根据给定的
  • VC++、MFC中最好的开源项目

    介绍一下用VC MFC写的最好的开源项目 Sourceforge net中有许多高质量的VC 开源项目 我列举了一些可以作为VC 程序员的参考 一 优秀的开源项目 7 Zip http sourceforge net projects se
  • react项目路由组件懒加载方法对比,@loadable/component和react-loadable和suspense lazy

    1 使用 loadable component方法 推荐使用这个 npm install loadable component S 先安装一下 2 在app js中引入 loadable component import Loadable
  • 随机森林回归模型--评分预测

    PS 介绍代码仅供介绍 源代码后期经过修改与介绍代码不一定完全相同 索引表 使用到的库 数据加载和预处理 划分训练集和测试集 模型选择和训练 模型评估 模型优化 结果展示 尾声 使用到的库 import pandas as pd 数据处理库
  • tomcat版本与jdk对应关系

    见tomcat官网说明 http tomcat apache org whichversion html Apache Tomcat Versions Apache Tomcat is an open source software imp
  • Mongodb系列- spring-data-mongodb使用MongoTemplate实现分页查询

    转载于 http www cnblogs com jycboy p 8969035 html 在用spring data mongodb框架开发的过程中 需要实现分页查询 就百度了下 没找到满意的又google了下 找到了思路 在sprin
  • IO进程线程day8(2023.8.6)

    一 Xmind整理 管道的原理 有名管道的特点 信号的原理 二 课上练习 练习1 pipe 功能 创建一个无名管道 同时打开无名管道的读写端 原型 include
  • 如何让Myeclipse已经关闭掉的项目不显示出来

    一 打开Package Explorer视图 在它的右上角有一个向下的三角图标 2 点击后选择Filters 在弹出的Filter配置窗口中选中 Closed Projects 转载于 https www cnblogs com rensh
  • rabbitmq消息消费失败如何处理

    在介绍消息中间件 MQ 之前 我们先来简单的了解一下 为何要引用消息中间件 例如 在电商平台中 常见的用户下单 会经历以下几个流程 当用户下单时 创建完订单之后 会调用第三方支付平台 对用户的账户金额进行扣款 如果平台支付扣款成功 会将结果
  • electron 自定义标题栏(windows 系统)

    其实没有网上那么麻烦 如果你仅仅只是想去掉标题 还有下面的工具栏 只需要如下配置 const win new BrowserWindow width 800 height 600 titleBarStyle hidden titleBarO
  • 大数据系列——概论

    1 何为大数据 在万物互联的时代 数据每时每刻都在产生 你的手机 笔记本 智能穿戴设备 智能家电等等所有联网的终端设备都在不间断的向云端输送着数据 云端数据呈指数级增长 在过去 受限于人类的计算能力 只能通过随机采样来进行数据分析 分析的结
  • 深度学习实战(十):使用 PyTorch 进行 3D 医学图像分割

    深度学习实战 十 使用 PyTorch 进行 3D 医学图像分割 1 项目简介 2 3D医学图像分割的需求 3 医学图像和MRI 4 三维医学图像表示 5 3D Unet模型 5 1损失函数 Dice Loss 5 2医学成像数据 5 2
  • 常用快捷键整理(centos7、Notepad++、Idea、Excel)

    目录 一 常用快捷键 1 Notepad 常用快捷键 2 centos7快捷键 3 idea快捷键 4 excel 一 常用快捷键 1 Notepad 常用快捷键 1 Ctrl D 复制当前行 2 Ctrl L 删除当前行 3 Ctrl T
  • Python面试经验总结,面试一时爽,一直面试一直爽!

    有伙伴问过我Python面试相关的问题 这里也跟大家总结了一下 跟大家说说我之前的面试经历和心得体会 1 简历制作 我做了两份简历 用两个手机账号 两个简历名字 分别在各个招聘网站投了双份简历 一个是数据分析的简历 一个是web全栈开发的简
  • 软件测试第一阶段:web前端技术基础-9- 测试用例设计方法

    一丶测试用例 测试用例 将要进行的测试工作具体化 并且记录到一个文件中 一般情况下是一个excel 表格 在测试用例中 明确的指定了每一步要做什么操作 期望得到什么结果 测试工作 等程序员完成代码 此时可以进行前期准备工作 也就是编写测试用