河南专业网站建设公司哪家好,公司名称怎么取名,wordpress文章图片很小,西安直播网站开发2.编写测试用例的方法 7种
测试常用的方法#xff1a;code review 代码静态分析、CI/CD
CI–持续集成–开发成员经常集成它们的工作#xff0c;尽快发现集成错误
CD–持续部署–将集成后的代码部署到更贴近真实运行的环境
2.1 测试用例的描述#xff1a;
用例编号 用例…2.编写测试用例的方法 7种
测试常用的方法code review 代码静态分析、CI/CD
CI–持续集成–开发成员经常集成它们的工作尽快发现集成错误
CD–持续部署–将集成后的代码部署到更贴近真实运行的环境
2.1 测试用例的描述
用例编号 用例标题 功能模块名称 前置条件 输入数据 操作步骤 预期结果
优先级 执行结果 编写人 执行人 其他补充项
2.2 测试用例设计方法 1基于需求依据需求来写测试点
难点读出需求之外的测试点需求非常的了解
需求学习方法、
多学习、分析需求测试经验项目组人员多沟通
2等价类–分类
思想解决无穷输入
目的减少测试用例条目
概念无穷输入进行N个归类从第一个类中提取一个数据进行测试只要这个数据测试通过我们就任务它所在的这一类的数据全部测试通过
有效等价类根据需求说明书和需求一致有意义的输入数据构成的集合
无效等价类和需求不一致不满足需求的集合
3边界值–黑盒测试方法
测试用例来自等价类的边界是等价类的一种补充方法与它基本成对出现
场景输入和输出
强调输入和输出的“边界值”
取值开区间和闭区间
开区间–向外取值闭区间–向内取值
【150】—015051
150】–125051
4因果图–条件和结果的关系–最后转为判定表
场景输入原因和输出结果之间的关系
概念输入原因和输出结果之间的关系输出依赖输入多个 因果图需要掌握的基本知识 基础概念:
恒等、与、或、非
恒等
如果原因为真那么结果必定为真。与
只有两个原因都为真那么结果为真或
2个原因有一个为真时结果为真非
原因为假结果才为真因果图设计测试用例的步骤
- 列出所有输入
- 列出所有输出
- 理出输入和输出之间的关系
- 画因果图
- 画判定表列数是输出的输入次方
- 从表里提出测试用例
因果法设计测试用例可以帮助测试人员理清输入和输出的关系但是对于比较复杂的输入和输出会耗费大量时间5正交排列法–减少用例数目对因果图的改进
原理正交表正交实验抽样
目的减少测试用例的条数
两条性质 任何一列中出现的数字个数一样\ 任何两列中有序对出现的次数一样 LN(TC)–L:正交表 N行数实验次数 T:水平数变量的可取值个数 C:因素数变量的个数列 NC*T-11 步骤
-变量提取出来
-提出水平
找出正交表多个
-取值—映射到表中
-表中每一行就是一条测试用例
-特殊的测试数据表中没有的添加进来
6场景法业务流程一个业务流程不一定是一个场景业务流程把孤立的功能点串起来注册--登录--写邮件--发邮件业务流程是场景法的典型用法7错误推测法猜测非凭空想象是有来源的三大来源 对某项目测试时间长 用户反馈 从故障库中整理bug梳理产品以往哪些地方容易出现问题
例如输入框要求字符类型--字符型输入非字符型是等价类中的无效等价类同时它也是错误推测法## 2.3 测试用例的评审- 分为项目组评审- 用户评审可以是最终用户也可以是程序员- 同行评审- 白盒要查看代码## 2.4黑盒测试设计测试用例方法包括等价类划分、边界值分析、因果图、场景法、正交实验设计法、判定表、驱动分析法、错误推测法、功能图分析法**依据**是用户需求规格说明书、详细涉及说明书
## 2.5白盒测试设计测试用例方法包括
语句覆盖、判断覆盖、条件覆盖、路径覆盖、条件组合覆盖依据是代码结构和逻辑 六种覆盖标准发现错误的能力由弱到强的变化-语句覆盖每条语句至少执行一次。 -判断覆盖每个判断的每个分支至少执行一次。 -条件覆盖每个判断的每个条件应取到的各种可能的值。 -判断/条件覆盖同时满足判断覆盖条件覆盖。 -条件组合覆盖每个判定中各条件的每一种组合至少出现一次。 -路径覆盖使程序中每一条可能的路径至少执行一次。
1.语句覆盖
设计若干测试用例运行被测程序使程序中每个可执行语句至少执行一次。只需设计一个测试用例:a2b1c6即达到了语句覆盖。
【优点】 可以很直观地从源代码得到测试用例无须细分每条判定表达式。
【缺点】 由于这种测试方法仅仅针对程序逻辑中显式存在的语句但对于隐藏的条件是无法测试的。如在多分支的逻辑运算中无法全面的考虑。语句覆盖是最弱的逻辑覆盖。
2.判定覆盖: 设计若干测试用例运行被测程序使得程序中每个分支的取真值和取假值至少一次即判断真假值均曾被满足。a2b1 c6M,Q分支全为真和a-2b-1 c-3M,Q分支全为假这两组测试用例可覆盖所有判定的真假分支。
【优点】判定覆盖具有比语句覆盖更强的测试能力。同样判定覆盖也具有和语句覆盖一样的简单性无须细分每个判定就可以得到测试用例。
【缺点】往往大部分的判定语句是由多个逻辑条件组合而成若仅仅判断其整个最终结果而忽略每个条件的取值情况必然会遗漏部分测试路径。判定覆盖仍是弱的逻辑覆盖。
3.条件覆盖设计若干测试用例执行被测程序以后要使每个判断中每个条件的可能取值至少满足一次。
判断M表达式:设条件 a0 取真 记为 T1 假F1
条件 b0 取真 记为 T2 假F2
判断Q表达式:设条件 a1 取真 记为 T3 假F3
条件 c1 取真 记为 T4 假F4
我们用条件覆盖设计的思想就是让测试用例能覆盖T1、T2、T3、T4、F1、F2、F3、F4
【优点】增加了对条件判定情况的测试增加了测试路径。
【缺点】条件覆盖不一定包含判定覆盖。例如我们刚才设计的用例就没有覆盖判断M的Y分支和判断Q的N分支。条件覆盖只能保证每个条件至少有一次为真而不考虑所有的判定结果。
4.判定条件覆盖设计足够的测试用例使得判断条件中的所有条件可能至少执行一次取值同时所有判断的可能结果至少执行一次。
测试用例要满足如下条件1.所有条件可能至少执行一次取值2.所有判断的可能结果至少执行一次。
【优点】 能同时满足判定、条件两种覆盖标准。
【缺点】 判定/条件覆盖准则的缺点是未考虑条件的组合情况。
5. 条件组合覆盖设计足够的测试用例使得所有可能的条件取值组合至少执行一次。
【优点】 条件组合覆盖准则满足判定覆盖、条件覆盖和判定/条件覆盖准则。
【缺点】 线性地增加了测试用例的数量。
6.路径覆盖设计所有的测试用例来覆盖程序中的所有可能的执行路径 。
【优点】 这种测试方法可以对程序进行彻底的测试比前面五种的覆盖面都广。
【缺点】 需要设计大量、复杂的测试用例使得工作量呈指数级增长不见得把所有的条件组合都覆盖。
从前面的例子我们可以看到采用任何一种覆盖方法都不能满足我们的要求所以在实际的测试用例设计过程中可以根据需要将不同的覆盖方法组合起来使用以实现最佳的测试用例设计 。