软件测试-实验二
实验项目名称:实验二
一、 实验目的
- 掌握白盒测试的基础知识;
- 掌握白盒测试的检查内容及测试目的;
- 掌握黑盒测试的几种基本测试方法:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组合覆盖、路径覆盖。
二、 实验内容
对实验一1、3题使用逻辑覆盖法进行测试用例设计。
对实验一2、4题使用基本路径法进行测试用例设计。
程序伪代码
注意: 1)参数表中EMPTAB 为职员表,DEPTTAB为部门表;
2 ) ESIZE为职员表长度,DSIZE为部门表长度;
3)ERRCODE为出错码
MAXSALERS = 0;
ERRCODE = 0;
if(ESIZE <= 0 || DSIZE <= 0)
ERRCODE = 1;
else
{
for(i = 1; i < DSIZE ; i++) //选出各部门中最大的销售额值
if(SALES[i] > MAXSALES)
MAXSALES = SALES[i];
for(j = 1; j < DSIZE; j++) //循环找出销售额最大的部门
if(SALES[j] == MAXSALES)
{
FOUND = false;
for(int k = 1; k < ESIZE ; k++) //检查销售额最大部门的所有人员
if(EMPTAB.DEPT(k) == DEPTTAB.DEPT(j))
{
FOUND = true;
if(SALARY(k) >= 15000.00 or JOB(k) = 'M') //满足条件的人员加工资
SALARY(k) = SALARY(k) + 100.00;
else
SALARY(k) = SALARY(k) + 200.00;
}
if(FOUND == false)
ERRCODE == 2;
}
}
采用判定覆盖、条件覆盖对该程序进行用例设计
三、 设计思路及结果
第一题:
流程图
控制流图
逻辑覆盖法
第二题
控制流图
计算复杂度V(G)=判定节点数+1=5
测试用例
第三题
程序流程图
控制流图
测试用例
第四题
控制流图
计算复杂度V(G)=判定节点数(8)+1=9
测试用例
采用判定覆盖、条件覆盖对题中程序进行用例设计。
(1)程序流程图
(2)程序流图
(3)测试用例
判定覆盖 |
||
输入 |
测试路径 |
测试结果 |
见下方表格 |
1-2-3-4 |
1 |
1-2-3-5-6-8-5-9-10-11-9-13-14-19-13-20-22 |
2 |
|
1-2-3-5-6-7-8-5-9-10-12-11-9-13-14-15-16-17-19-13-20-21 |
0 |
路径一:
Employee Table |
|||
Name |
Job code |
Dept |
Salary |
|
|
|
|
Department Table |
|
Dept |
Sales |
|
|
路径二:
Employee Table |
|||
Name |
Job code |
Dept |
Salary |
hou |
E |
A |
10000 |
meng |
E |
A |
10000 |
Department Table |
|
Dept |
Sales |
A |
20000 |
B |
50000 |
路径三:
Employee Table |
|||
Name |
Job code |
Dept |
Salary |
hou |
E |
A |
20000 |
meng |
M |
B |
30000 |
chen |
E |
B |
20000 |
qing |
E |
B |
10000 |
Department Table |
|
Dept |
Sales |
A |
20000 |
B |
60000 |
条件覆盖 |
||
输入 |
测试路径 |
测试结果 |
见下方表格 |
1-2-3-4 |
1 |
1-2-3-4 |
1 |
|
1-2-3-5-6-8-5-9-10-11-9-13-14-19-13-20-22 |
2 |
|
1-2-3-5-6-7-8-5-9-10-12-11-9-13-14-15-16-17-19-13-20-21 |
0 |
路径一:
Employee Table |
|||
Name |
Job code |
Dept |
Salary |
hou |
E |
A |
10000 |
Department Table |
|
Dept |
Sales |
|
|
路径二:
Employee Table |
|||
Name |
Job code |
Dept |
Salary |
|
|
|
|
Department Table |
|
Dept |
Sales |
A |
10000 |
路径三:
Employee Table |
|||
Name |
Job code |
Dept |
Salary |
hou |
E |
A |
10000 |
meng |
E |
A |
10000 |
Department Table |
|
Dept |
Sales |
A |
20000 |
B |
50000 |
路径四:
Employee Table |
|||
Name |
Job code |
Dept |
Salary |
hou |
E |
A |
20000 |
meng |
M |
B |
30000 |
chen |
E |
B |
20000 |
qing |
E |
B |
10000 |
Department Table |
|
Dept |
Sales |
A |
20000 |
B |
60000 |