业务测试如何设计用例
业务测试如何设计用例
- 一、流程类测试设计
- 1.流程类测试点有哪些特征
- 2、流程类分析方法
- 二、参数类测试设计
- 1、参数类测试点有哪些特征
- 2、参数类测试设计方法
- 三、数据类测试设计
- 1、数据类测试点有哪些特征
- 2、数据类测试设计方法
- 四、组合类测试设计
- 1、组合类测试点有哪些特征
- 2、组合类测试设计方法
- 五、四步测试设计法
- 第一步:建模
- 第二步:设计基础测试用例
- 第三步:补充测试数据
- 第四步:扩展
- 总结
一、流程类测试设计
1.流程类测试点有哪些特征
流程类测试点,拥有流程方面的一些特征。具体来说,我们将测试点分成一些步骤,会因为输入的不同而进行不同的处理,全部分析完成后,能够将测试点绘成如图所示的流程图
有时候,一个测试点可能只能绘出一个流程片段,我们可以把与此相关的测试点放到一起,使其能够表示一个较为完整的流程
2、流程类分析方法
流程类使用路径分析法进行覆盖如:覆盖类型:语句覆盖、分支覆盖、全覆盖、线性无关覆盖
语句覆盖:保证每条语句最少被执行一次(过程、判断即语句)
分支覆盖(判定覆盖):每个判定的每种结果最少执行一次
全覆盖:100%覆盖所有可能的路径。采用排列组合算法,得出“全路径”
最小线性无关覆盖:保证流程中的每个路径片段最少执行一次
最小线性无关覆盖:(三等式+算法)
三个等式计算流程图的路径数:(三等式等效,计算结果应该相同)
四种覆盖算法总结
- 覆盖强度:语句覆盖<条件覆盖<最小线性无关覆盖<全覆盖
- 可根据功能的重要等级选择使用哪种覆盖
- 新需求流程图分析完后,可采用最小线性无关覆盖
- 特别重要的功能,再具体分析,是否采用全覆盖
- 通过流程图写出基本测试用例
二、参数类测试设计
1、参数类测试点有哪些特征
如果测试点中主要包含的是一些参数,能够概括成和图所示类似的样子(“A”表示参数,“a1”“a2”“a3”表示“A”的取值),就可以认为这个测试点是参数类的
参数类的测试点有以下两个重要的特点:
第一,“参数值”的个数是有限的,可以通过遍历的方式来测试覆盖到
第二,系统会对不同的“参数值”作出不同的处理或响应
2、参数类测试设计方法
参数类适合场景
- 功能点的多个参数之间存在相互关系,需要对参数进行“组合”分析
1. 分析方法:“输入-输出表”
2. 分析步骤
第一步: 列出“输入-输出表”
第二步:100%覆盖“输入-输出表”
第三步: 其他扩展补充
3. 具体步骤
步骤一
- 确定参数和参数值
- 确定约束条件
- 将所有参数组合列出来,根据约束条件,删除重复项
- 将表格中的重复项去掉后,得出最终的输入输出表
步骤二
- 覆盖“输入-输出表”,得出测试用例
参数类总结
- 适合产品对各参数处理不同,且相互之间有约束关系
- 得出正确的约束条件,需要掌握内部实现/协议规定
- 参数类用例得出后,设计用例数据时,又可结合数据类方法
三、数据类测试设计
1、数据类测试点有哪些特征
- 如果测试点中主要包含的是一些数据,能够概括成和图所示类似的样子(“A”表示参数,“amin”“amax”表示“A”的取值范围),就可以认为这个测试点是数据类的
- “数据”类的特点
第一,数据的取值是一个范围,通常不能用遍历的方式来测试覆盖
第二,系统对允许输入的“数据”作出的处理或响应往往是一样的
2、数据类测试设计方法
对数据类的测试方法:适合类型
- 设计需求规格用例
- 对流程类分析得到的测试点,设计用例的输入数据
具体步骤
步骤一:列出“等价类分析表”
入值按照测试效果进行划分,测试效果相同的测试数据归为一类
1、有效等价类(产品规格合理的、有意义的输入数据构成的集合)
2、无效等价类(不合理、无效的数据集合)等价类划分原则
1、无冗余性:划分的子集互不相交
2、完备性:各子集合并为整个集合等价类划分方法
1、若规定了取值范围或个数,可分为一个有效等价类、2个无效等价类
2、规定了输入数据必须遵守的规则,可确立一个有效等价类和多个无效等价类
步骤二:使用“边界值”来为“等价类分析表”确定测试数据
- 边界值:条件参数在输入边界的取值;取完边界值,再取一个有效中间值测试
- 其余无效项不用再划分边界值,直接使用无效等价类为测试数据
步骤三:部分测试点的等价类相同,则可将等价类分配到不同测试点
步骤四:根据等价类分析表,整理出用例
数据类总结
- 确定等价类时,需与开发讨论,同一类测试数据的处理是否相同
- 有些等价类可直接作为用例数据,不需再取边界值如:密码只包含大写字母、小写字母
- 有效等价类取完边界值,可再选取一个中间值, 如:VLAN规格[1,4094],有效等价类取值1,4094,2000
- 多个测试点的等价类相同,则将数据分配到不同测试点,避免用例冗余,如:上页中不同方式修改账号密码
- 某功能点包含多项数据类时,测某项无效类时,另一项取有效类,如:密码限制有长度、字符类型。测长度无效类时,字符类型取有效类
四、组合类测试设计
1、组合类测试点有哪些特征
- 和单纯的流程类相比,它可能有多个“输入”,这多个“输入”可能为参数,也可能为数据
2、组合类测试设计方法
- 流程类+参数类+数据类型进行用例互补
五、四步测试设计法
- 把测试点加工为测试用例,就叫测试设计,在这个过程中使用的方法就叫测试设计方法,路径分析法、判定表、正交分析法、等价类、边界值等都是常见的测试设计方法
- 四步测试设计法是一套通过四个步骤来完成测试设计的方法。四步测试设计法中包含一些模型,对每一种模型,都有适合这个模型的测试设计方法,起到了很好的测试设计指引的作用
- 四步测试设计法的四个关键步骤如图所示
第一步:建模
在这个步骤中,我们并不是要大家对每个测试点都原创出一些测试模型,而是根据测试点的特征,为测试点选择一个适合后续测试设计的模型。也许我们称这个步骤为“选模”更为贴切
既然“选模”需要参考测试点的特征,研究测试点、分析特征的情况并对其进行归类是必不可少的。目前我们将其分为四类
- 类型1:“流程”
- 类型2:“参数”
- 类型3:“数据”
- 类型4:“组合”
对每一类测试点,我们都给出了一些最适合的“建模”方法:
- “流程”类,可以通过绘制“流程图”来建立测试模型
- “参数”类,可以通过“输入输出表”来建立测试模型
- “数据”类,可以通过“等价类分析表”来建立测试模型
- “组合”类,可以通过“因子表”来建立测试模型
“建模”帮我们解决了面对众多测试方法的选择性难题,使得测试设计变得很有针对性,科学又有效
第二步:设计基础测试用例
在这个步骤中,我们会对已经建立好的测试模型,来设计一些基础测试用例,覆盖这个测试模型
为什么我们称此时的测试用例为基础测试用例呢?测试用例和基础测试用例最大的差别在于,测试用例确定了测试条件(类似“在XX情况下,进行XX的测试”的描述)和测试数据(就是输入的“参数值”或“数值”),而基础测试用例只确定了测试条件
第三步:补充测试数据
在这个步骤中,我们为基础测试用例来确定测试输入,补充测试数据,这时基础测试用例就升级成真正的测试用例了
第四步:扩展
模型不是银弹,不能解决测试设计的所有问题。我们还需要根据经验,特别是对系统哪些地方容易发生缺陷的认识,补充一些测试用例,增加系统的有效性
总结
- 建模:确定模块或功能的类型,将模块或测试点划分已以下四类中的一种或组合类
①流程类:将功能点分成一些步骤,会因为不同的输入产生不同的处理
②参数类:测试点包含的是参数,参数的个数是有限的,系统对不同参数值有不同的处理
③数据类:测试点主要包含数据,如用户名、IP地址配置合法校验等;数据的取值是范围,系统对合法的数据作出的处理相同
④组合类:将上述三类可以组合在一起的,为组合类 - 设计基础用例:不同模型采用不同分析方法,设计基础用例
- 补充测试数据:为基础用例补充测试数据
- 扩展:根据经验、其它类似产品历史缺陷、客诉补充用例
业务测试如何设计用例相关推荐
- 8年测试经验,用例设计竟然不知道状态图法?
作为测试人,我们平时比较常用的软件测试测试方法有边界值.等价类划分.错误推测法.因果图.场景法等,如果提到状态图法,可能很多人都很陌生,今天我们就来一起认识下状态图法. 状态图通常在被测试软件状态比较 ...
- 软件测试--黑盒测试用例、测试步骤设计方法(正交实验法、功能图法、其他用例设计方法)
黑盒测试用例设计(三) 正交实验法 正交表:一种特制的表,一般的正交表记为Ln(mk) m代表水平数,k代表因素数,n是需要进行实验的个数.这三个数没有任何数学关系. 仅适用于每个因素的水平数都相同的 ...
- petshop详解之五:PetShop之业务逻辑层设计
五 PetShop之业务逻辑层设计业务逻辑层(Business Logic Layer)无疑是系统架构中体现核心价值的部分.它的关注点主要集中在业务规则的制定.业务流程的实现等与业务需求有关的系统设计 ...
- petshop4.0 详解之五(PetShop之业务逻辑层设计)[转]
业务逻辑层(Business Logic Layer)无疑是系统架构中体现核心价值的部分.它的关注点主要集中在业务规则的制定.业务流程的实现等与业务需求有关的系统设计,也即是说它是与系统所应对的领域( ...
- 58技术主席:还原万亿级三高业务场景的设计与实践
孙玄,前58集团技术委员会主席,前转转二手交易平台首席架构师.今天想跟你聊点儿企业里那些年薪百万的架构师,他们的架构设计思维是如何升级的,我们来聊点儿干的! 01.百万年薪的核心竞争力 作为前58集团 ...
- petshop4.0 详解之五(PetShop之业务逻辑层设计)
五 PetShop之业务逻辑层设计 业务逻辑层(Business Logic Layer)无疑是系统架构中体现核心价值的部分.它的关注点主要集中在业务规则的制定.业务流程的实现等与业务需求有关的系统设 ...
- web测试常用的用例及知识
1. Web测试中关于登录的测试... 1 2. 搜索功能测试用例设计... 2 3. 翻页功能测试用例... 3 4. 输入框的测试... 5 5. ...
- PetShop之业务逻辑层设计
<解剖PetShop>系列之五 五 PetShop之业务逻辑层设计 业务逻辑层(Business Logic Layer)无疑是系统架构中体现核心价值的部分.它的关注点主要集中在业务规则的 ...
- 测试人员应看重「业务测试能力」
大家好啊,我是大田. 2022.03.19 日更第 42 / 365 天 本篇想结合自己平时的学习和实践梳理下业务测试能力. 作为测试人员,拥有业务测试能力是非常重要的,它是做其他工作的基础,并不是要 ...
最新文章
- java signature 性能_Java常见bean mapper的性能及原理分析
- 如何锻炼自己的抗干扰能力
- PXC管理数据库服务器(引擎)
- reactjs高阶函数和函数柯里化
- Python中的类(2)
- java中rank函数_sql rank()函数
- 应用层——使用 Socket 通信实现 FTP 客户端程序
- 计算机数据恢复报告单,计算机数据恢复第三章MBR引导分析篇
- 目标检测——数据清洗的学习笔记
- 给Ionic写一个cordova(PhoneGap)插件
- 路由聚合(汇总)以及最长匹配原则
- 山东理工ACM【1009】Elevator
- ulimit命令参数及用法
- 直播商城APP功能介绍
- osg 根据两个点的经纬度计算方位角
- Spatial Attention
- 最简单ListView显示联系人姓名和电话号码
- 如何写批处理文件(.bat)
- (二)Landsat_5 TM 遥感影像波段合成真假彩色影像
- python人工智能开发语言_哪些编程语言最适合开发人工智能?