【软件测试】 测试用例的设计方法大全
1.测试用例的八要素
用例编号:用于标识当前的用例,具有唯一性和易识别性
测试项目:对当前测试用例的子项有进一步说明的作用
测试标题:简单说明测试的目的,便于他人理解
重要级别:一般分为高、中、低三个级别
预置条件:执行测试用例前,需要执行的操作或者环境的设定
测试输入:执行用例时需要加入的信息,可手工输入或选择
操作步骤:明确描述执行用例需要进行的操作
预期输出:用于检测被测试对象是否正常工作,结果是否正确
2.测试用例的设计方法
1.等价类划分法
应用场景: 输入的集合有无穷个数据,且没有边界,不能通过穷举测试用例全部覆盖到。
例:超市买水果
有效等价类:苹果,香蕉,橘子,梨
无效等价类:白菜,大米,饮料,鱼
划分方法: 依据需求特点将输入的数据(有效的/无效的)划分为若干个等价类。从有效等价类和无效等价类中分别选择一个具有代表性的数据设计测试用例,如果执行这个测试用例测试通过,则认为所代表的整个等价类测试通过,这样就可以通过较少的测试用例达到尽量多的功能覆盖,解决了不能穷举测试的问题,并且保证了测试用例的完整性和代表性。
2.边界值分析法
应用场景: 输入的集合有明显的边界划分,此边界两边的值会产生两种截然不同的结果。
例:考完试发成绩了,老师布置寒假作业:超过60分的,所有题目抄写一遍,低于60分的,所有题目抄写三遍。
通过等价类划分法(50-无效等价类;70-有效等价类)测试可以通过。但最后小明没有交作业,因为他刚好60分。这就是等价类的弊端!!
所以我们需要边界值来进一步保证测试结果的准确性,此时我们可以增加以下几个测试用例:60分,59分,70分。
取值规则: 通常边界值分析法是作为等价类划分方法的补充。我们边界值分析法是对输入或者输出的边界值进行测试的一种黑盒测试方法。
边界取的三点:上点(边界上的点),离点(离边界最近的点),内点(有效范围内的任意点)
边界值与等价类方法的区别:
(1)边界值分析不是从某等价类中随便挑一个作为代表,而是使这个等价类的每个边界都要作为测试条件。
(2)边界值分析不仅考虑输入条件,还要考虑输出空间产生的测试情况。
3.因果图
应用场景: 因果图法是一种适合于描述对于多种输入条件组合的测试方法,根据输入条件的组合、约束关系和输出条件的因果关系,分析输入条件的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件涉及的各种组合情况。因果图法一般和判定表结合使用,通过映射同时发生相互影响的多个输入来确定判定条件。因果图法最终生成的就是判定表,它适合于检查程序输入条件的各种组合情况。
因果关系:
输入与输入的关系
1、异:所有输入条件中最多有一个产生,也可以一个没有
2、或:所有输入条件中,最少有一个产生,或者多个,或所有
3、唯一:所有输入条件中,有且只有一个条件产生
4、要求:所有输入条件,只要有一个产生,其他也会跟着出现
输入与输出的关系
1、恒等:当输入条件发生时,结果一定会出现
当输入条件不发生时,结果一定不会出现
2、非:当输入条件发生时,结果一定不会出现
当输入条件不发生时,结果一定会出现
3、与:当多个输入条件中,只有所有输入条件都发生,结果才会出现
4、或:当多个输入条件中,只要有一个发生,结果就会出现
设计测试用例的步骤:
分析所有可能的输入和可能的输出
找出输入与输出之间的关系
画出因果图
把因果图转化成判定表
把判定表对应到每一个测试用例
4.判定表(正交排列)
使用因果图的方法总是产生很多测试用例,所以正交法的目的是为了减少用例数量,用尽量少的用例,覆盖输入的两两组合。
应用场景: 正交试验设计是研究多因素多水平的一种设计方法,它是根据正交性,由实验因素的全部水平组合中挑选出部分有代表性的点进行实验,通过对这部分实验结果的分析了解全面试验的情况,找出最优的水平组合,正交试验设计是一种基于正交表的,高效率,快速,经济的测试方法。
因素(Factor):在一项试验中,凡是考虑的变量都称为因素(变量)
水平(位级) Level :在试验范围内,因素被考查的值称为水平(变量的取值)
在同一条正交表中,每个因子的每个水平出现的次数完全相同,试验中,每个因子的每个水平与其它因子的水平参与试验的几率完全相同。
设计测试用例的步骤
试验次数N=(因素的水平数-1)*因素数+1
1、有哪些因素(变量)
2、每个因素有哪几个水平(变量的取值)
3、选择一个合适的正交表
4、把变量的值映射到表中
5、把每一行的各因素水平的组合作为一个测试用例
6、加上你认为可疑且没有在表中出现的用例组合
5.场景设计法
应用场景: 现在的软件几乎都是用事件触发来控制事件流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果就形成事件流,该方法可以比较生动地描绘出事件触发时的情景,有利于测试设计者设计测试用例,使测试用例更容易理解和执行。例如:网页注册,ATM取款。。
使用方法:
1、理解需求,确定业务流程
2、绘制流程图,再次明确流程路径
3、根据业务流程图,抽取测试路径,每次路径需包含一个从未走过的路径
4、细化路径设计测试用例
注意:需使用等价类、边界值、正交实验、判定表、因果图等方法保证单个功能的正确性
所有操作流程可划分为以下三种:
基本流:通过业务流程输入都为正确的,能够最后达标的目标流程
备选流:通过实现业务流程时,因错误操作或异常输入,导致流程存在反复,但最终能够完成期望业务的流程
异常流:通过实现业务流程时,因错误操作或异常输入,导致业务没有正确完成
6.错误推测法
这是测试经验丰富的测试人员最喜欢的一种方法。
应用场景: 基于经验和直觉,找出程序中你认为会出现的错误,有针对性地设计测试用例,经验可能来自于对某项业务的测试较多,也可以来自售后用户的反馈意见,或者从故障管理库中整理出bug,整理出产品越往哪些地方越容易出现问题,问题越多的地方,潜在的bug越多。
【软件测试】 测试用例的设计方法大全相关推荐
- 软件测试学习笔记:测试用例的设计方法(全)
测试用例的设计方法(全) 等价类划分方法: 一.方法简介 1.定义 2.划分等价类: (1)有效等价类 (2)无效等价类 3.划分等价类的标准: 4.划分等价类的方法 5.设计测试用例 二.实战演习 ...
- 学习软件测试(三)测试用例、测试用例的设计方法(等价类划分法、边界值分析法、判定表法、因果图法、正交排列法、场景法、错误推测法)
目录 测试用例 测试用例八大要素 测试用例的设计方法 等价类划分法 等价类操作步骤 边界值分析法 边界范围 边界值法的操作步骤 案例1 案例2 判定表法 为什么使用判定表法 判定表法的四个组成部分 判 ...
- (转)测试用例的设计方法(全)之三 判定表、正交实验
测试用例的设计方法(全)之三 (5)判定表驱动分析方法 一. 方法简介 1.定义:判定表是分析和表达多逻辑条件下执行不同操作的情况的工具. 2.判定表的优点 能够将复杂的问题按照各种可能的情况全 ...
- 测试用例的设计方法(全)
测试用例的设计方法(全) 等价类划分方法: 一.方法简介 1.定义 是把所有可能的输入数据,即程序的输入域 ...
- 测试用例的设计方法及案例
测试用例的设计方法 一.软件测试的生命周期(软件测试的流程是什么?) 二.如何描述一个BUG? 三.测试用例的设计方法 3.1等价类 3.2边界值法 3.3因果图法 3.4场景设计法 3.5正交排列法 ...
- (转)测试用例的设计方法(全)之二 错误推断、因果图
测试用例的设计方法(全)之二 (3)错误推测方法 一. 方法简介 1. 定义:基于经验和直觉推测程序中所有可能存在的各种错误, 从而有针对性的设计测试用例的方法. 2. ...
- 3.4 黑盒测试用例的设计方法 之 等价类划分与边界值分析
3.4 黑盒测试用例的设计方法 具体的黑盒测试用例设计方法包括等价类划分法.边界值分析法.场景法.错误推测法.因果图法.判定表驱动法.正交试验设计法.功能图法等. 这些方法是比较实用的,但采用什么方法 ...
- 测试篇(三):测试用例的万能公式、对水杯和登录页面设计测试用例、测试用例的设计方法
目录 一.测试用例的万能公式 二.对登录页面设计测试用例 三.测试用例的设计方法 3.1 基于需求的设计方法 3.2 等价类 3.3 边界值 3.4 判定表 3.5 正交排列 3.6 场景设计法 3. ...
- 2021最详细的测试用例的设计方法及案例——骚操作
测试用例的设计方法 一.概念 1.什么是测试用例? 在测试过程中很重要的一类文档,它是测试工作的核心.是一组在测试时输入输出的标准.是软件需求的具体对照. 2.测试用例的作用: 检验软件是否满足客户需 ...
最新文章
- 2022-2028年中国餐具行业市场研究及前瞻分析报告
- JS学习笔记之call、apply的用法
- office插入常见数学公式
- 解决:fatal: Not a valid object name: ‘master‘问题
- [Web 前端 ] 还在用浮动吗?CSS flex布局你了解多少?
- python嵌入shell代码_大家一起学python-Python基础1
- 用计算机谈过火,央视电视文化中心过火网架的复建关键技术研究
- Python之实现常见算法
- 第 5 章 MybatisPlus ActiveRecord
- OSChina 周四乱弹 —— 电脑上都有监视器
- 利用rancher轻松构建pass平台
- python给批量图片添加文字 脚本_Python实现图片添加文字
- wps/word中怎么插入各种水平分隔线
- AAM(Active Appearance Model)算法介绍
- PB控件属性之Graph
- 深度解析CentOS通过日志反查入侵
- UIlabel调整行间距
- scanner/portscan/syn
- c语言程序设计教程北京大学,C语言程序设计教程北京大学第章ppt课件.ppt
- Android手机来电防火墙
热门文章
- 单井号(#)和双井号(##)
- Mysql++关于多数据集查询Commands out of sync; you can‘t run this command now的问题
- NZT 9系统详细安装办法
- Autodock分子对接详细步骤
- App发版流程及注意事项
- 完美解决linux下Django报错Error: That port is already in use.
- 快手sig签名,python版,可用于快手关键字搜索结果采集
- Docker镜像存储位置修改
- 大同5中高考2021年成绩查询,大同中学排名前十名,2021年大同中学排名一览表
- 第七章 输入与输出 ——python导引编译之八