null白盒测试用例设计
方法
快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载
白盒测试用例设计方法计算机软件测试白盒测试概述白盒测试概述把测试对象看做一个透明的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。
通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致。因此白盒测试又称为结构测试或逻辑驱动测试。null软件人员使用白盒测试方法,主要想对程序模块进行如下的检查:
对程序模块的所有独立的执行路径至少测试一次;
对所有的逻辑判定,取“真”与取“假”的两种情况都至少测试一次;
在循环的边界和运行界限内执行循环体;
测试内部数据结构的有效性,等。什么人员适合做白盒测试方法?null例:白盒测试程序段null对一个具有多重选择和循环嵌套的程序,不同的路径数目可能是天文数字。
上面给出一个小程序的流程图,它包括一个执行20次的循环。
包含的不同执行路径数达520条,假设对每一条路径进行测试需要1毫秒,假定一年工作365 × 24小时,要想把所有路径测试完,需3170年。穷举法行不通!!白盒测试方法
1------逻辑覆盖白盒测试方法
1------逻辑覆盖计算机软件测试重 点null 语句覆盖
判定覆盖
条件覆盖 判定-条件覆盖
条件组合覆盖
路径覆盖逻辑覆盖是以程序内部的逻辑结构为基础的设计测试用例的技术,属白盒测试。?条路径?条路径1. 语句覆盖 1. 语句覆盖 语句覆盖就是设计若干个测试用例,运行被测程序,使得每一可执行语句至少执行一次。
此例中,满足语句覆盖需要几个测试用例?选择路径 1-2-4设计测试用例,就可以覆盖所有的可执行语句。 null测试用例的设计
格式
pdf格式笔记格式下载页码格式下载公文格式下载简报格式下载
如下 【输入的(a,b,c),输出的(a,b,c)】
图例设计满足语句覆盖的测试用例是: 【(2, 1, 6),(2, 1, 5)】
就可以覆盖所有可执行语句.语句覆盖 语句覆盖 运行被测程序,使得每一可执行语句至少执行一次。
不能发现其中的逻辑错误.
if (a>0) and (b>0)
then c=c/a;
if (a>1) or (c>1)
then c=c+1;
c=b+c;
or 2.判定覆盖 2.判定覆盖设计若干个测试用例,运行被测程序,使得程序中每个判断的取真分支和取假分支至少经历一次,又称为分支覆盖。对于图例,如果选择路径1-2-4和1-3-5,就可得满足要求的测试用例:null【(2, 1, 6),(2, 1, 5)】覆盖真真;
【(-1, 1,1),(-1,1, 2)】覆盖 假假;如果选择其他路径,还可得另一组可用的测试用例:
【(1, 1,0),(1,1,1)】覆盖 真假;
【(2, 0, 3),(2,0,4)】覆盖 假真;判定覆盖 判定覆盖
会忽略复合条件是 or 关系
if (a>0) and (b>0)
then c=c/a;
if (a>1) or (c>1)
then c=c+1;
c=b+c;
and3.条件覆盖3.条件覆盖设计若干个测试用例,运行被测程序,使得程序中每个判断的每个条件的可能取值至少执行一次。有多少情况呢?8种
需要几个测试用例?null2个测试用例 覆盖路径 条件取值
【(2, -1, -2),(2, -1, -2)】 1-3-4
【(-1, 2, 3),(-1,2,6)】 1-3-4 真假真假
假真假真null条件覆盖
不一定满足判定覆盖要求
可能遗漏逻辑错误.
null4. 判定-条件覆盖
设计足够的测试用例,使得判断中每个条件的所有可能取值至少执行一次,每个判断的可能结果至少执行一次。条件取值 判断取值 测 试 用 例
4个 2个
null条件取值 判定取值 测 试 用 例
4个 2个 ?个 真真真真 真真 (2,1,6)
假假假假 假假 ( -1,-2,-3)判定-条件覆盖
判定+条件 综合
可能遗漏路径
路径 1-2-4
路径 1-3-5
分解例子分解例子andorA>1TB=0TX=X/ATFFA=2TFX>1FX=X+15.条件组合覆盖5.条件组合覆盖设计足够的测试用例,使得每个条件的所有可能和每个判断的所有可能的取值组合至少出现一次。
条件取值 判断取值 组 合
4个 2个 ?个
null组合 条件取值 判断取值
1 T1T2 M
2 T1F2 /M
3 F1T2 /M
4 F1F2 /M
5 T3T4 N
6 T3F4 N
7 F3T4 N
8 F3F4 /N
?个测试用例? 条件取值 判断取值 组合
T1T2T3T4 M N 1,5
T1F2T3F4 /MN 2,6
F1T2F3T4 /M N 3,7
F1F2F3F4 /M /N 4,8测试用例
(2,1,6) (2,-1,-2) (-1,2,3) (-1,-2,-3) 最完整了吗?比较完整,但仍有路径没有执行到.6.路径测试6.路径测试设计足够的测试用例,覆盖程序中所有可能的路径。
路径 覆盖条件 条件组合
1-2-4 T1T2T3T4 1,5
1-2-5 T1T2F3F4 1,8
1-3-4 F1F2F3T4 4,7
1-3-5 F1F2F3F4 4,8 没有覆盖所有的条件组合
null逻辑覆盖 总结:
1.前面介绍的每个方法都不能覆盖所有测试用例;
2.实际应用中,应组合起来交叉使用;去看例
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
例题路径 覆盖条件 条件组合
1-2-4 T1T2T3T4 1,5
1-2-5 T1T2F3F4 1,8
1-3-4 F1F2F3T4 4,7
1-3-5 F1F2F3F4 4,8 1-3-4 T1F2T3F4 2,6
1-3-4 F1T2F3T4 3,7白盒测试方法
2------路径覆盖白盒测试方法
2------路径覆盖计算机软件测试重 要
1、环路复杂性
1、环路复杂性
在程序控制流图的基础上,通过
分析
定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析
控制构造的环路复杂性导出基本可执行路径集合,从而设计测试用例。
要保证每个可执行语句至少执行一次。
判定
判定
当程序中判定多于一个时,形成的分支结构可以分为两类:
嵌套型分支结构:若有n个判定语句,需要n+1个测试用例;
连锁型分支结构:若有n个判定语句,需要有2n个测试用例,覆盖它的2n条路径。null2n条路径太多,可以采用正交实验设计法缩减到n+1~2n条。null if (a>b)
a←→b
if (a>c)
a←→c
if (a>d)
a←→d
if (b>c)
b←→c
if (b>d)
b←→d
if (c>d)
c←→d
例: 4个数排序26条路径缩减到7条循环循环4种类型null (1) 简单循环
① 零次循环:从循环入口到出口 ② 一次循环:检查循环初始值 ③ m次循环:检查在多次循环才能暴露的问题,最大次数循环、比最大次数多一次、少一次的循环。k = i;//求最小值
for ( j = i+1; j <= n; j++ )
if ( A[j] < A[k] ) k = j; nullk = i ; j = i+1;j <= n?A[j]
规则
编码规则下载淘宝规则下载天猫规则下载麻将竞赛规则pdf麻将竞赛规则pdf
:
如果经过节点C,则必须经过节点H。
如果经过节点D,则必须经过节点G。 计算机软件测试结构化程序设计构造结构化程序设计构造串行IF-ThenIF-Then-Else条件前测试环路后测试环路计算机软件测试三角形问题结构化程序设计构造压缩三角形问题结构化程序设计构造压缩计算机软件测试三角形问题结构化程序设计构造压缩三角形问题结构化程序设计构造压缩计算机软件测试非结构化程序的测试非结构化程序的测试测试人员的基本原则是:具有高圈复杂度的程序需要更充分的测试。 采用圈复杂度指标的机构,大多数都确定了某种最大可接受复杂度指导方针,一般都选择V(G)=10。 如果单元的基本复杂度超过了指导方针规定,则最好的选择常常是解决非结构化问题。 计算机软件测试指导方针与观察 指导方针与观察 基路径测试给出了必须进行的测试的下限。 如果发现同一条程序路径被多个功能性测试性用例遍历,就可以怀疑这种冗余不会发现新的缺陷。如果没有达到一定的DD-路径覆盖,则可以知道在功能性测试用例中存在漏洞。 利用源代码的性质标识合适的覆盖指标,然后再使用这些指标交叉检查功能性测试用例。 计算机软件测试