软件测试实验4

  • 格式:doc
  • 大小:244.50 KB
  • 文档页数:8

软件测试实验4
本页仅作为文档页封面,使用时可以删除
This document is for reference only-rar21year.March
广东海洋大学学生实验报告书
实验名称 实验四 白盒测试 课程名称 软件测试 成绩
学院
(系)
软件学院 专业 软件工程 班级

学生姓名 学号 实验地点 实验日期
一、 实验目的:
1. 掌握白盒测试原理和测试方法
2. 使用白盒测试的逻辑测试和基本路径测试法设计测试用例

二、 实验内容:
1. 画出如下程序段的程序流程图,分别用最少的测试用例完成语句覆盖、判定覆盖、
条件覆盖和路径覆盖的测试设计。
void test(int x, int y)
{
if (x>0 && y>10) y=y/x;
if(x<-10 || y<0) y=-(y+x);
}
程序流程图如下所示:

a
input x,y
x>0 and y>10
y=y/x

x<-10 or y<0

y=-(y+x)

b
c

d
e

语句覆盖每条语句至少执行一次。判定覆盖每个判定的每个分支至少执行一次。条
件覆盖每个判定的每个条件应取到各种可能的值。路径覆盖使程序中每一条可能的
路径至少执行一次。

由这个流程图可以看出,该程序模块有4条不同的路径:
P1:(a-c-e) P2:(a-c-d)
P3:(a-b-e) P4:(a-b-d)
将里面的判定条件和过程记录如下:
判定条件M={x>0 and y>10}
判定条件N={x<-10 or y<0}
1、 语句覆盖(P4)
测试用例输入 输出 判定M的取值 判定N的取值 覆盖路径
T T P4(a-b-d)
经仔细琢磨,本程序无法实现语句覆盖。(原因不解释)

2、判定覆盖(P2 P3)
P2和p3可以作为测试用例。
测试用例输入 输出 判定M的取值 判定N的取值 覆盖路径
x=-1, y=0 y=1 F T P3(a-b-e)
x=1,y=11 y=11 T F P2:(a-c-d)

3、条件覆盖
对于M:x>0取真时T1,取假时F1;
y>10取真时T2,取假时F2;
对于N:x<-10取真时T3,取假时F3;
Y<0取真时T4,取假时F4。
条件:x>0,y>10
条件:x<-10,y<0
根据条件覆盖的基本思路,和这8个条件取值,组合测试用例如表所示:
测试用例输入 输出 取值条件 具体取值条件 覆盖路径
x=1,y=11 11 T1,T2,F3,F4 x>0,y>10 P1(a-c-e)
x=-11,y=-1 12 F1,F2,T3,T4 x<-10,y<0 P4(a-b-d)

4、路径覆盖
测试用例输入 输出 覆盖条件取值 覆盖路径
无符合值 T1,T2,T3,T4
P4(a-b-d)
x=1,y=11 11 T1,T2,F3,F4 P3(a-b-e)
无符合值 T1,F2,T3,T4
P2(a-c-d)
无符合值 F1,F2,F3,F4
P1(a-c-e)

由上表可知,本程序无法实现路径覆盖。
2.画出如下程序段的程序流程图和控制流图,分析程序的环复杂度,并确定程序的
独立路径和设计相应的测试用例。
void Test1( int n, int i )
1 {
2 int x=0;
3 int y=0;
4 while ( n-- > 0 )
5 {
6 if ( i==0 )
7 x=y+2;
8 else
9 if ( i==1 )
10 y=y+10;
11 else
12 x=y+20;
13 }// while
14 }// Test1

程序流程图如下所示:
N
input n,i
n>0
i==0
x=y+2
Y

Y

n=n-1
i==1
N

x=y+20
y=y+10
NY

a
b
c

d
e

f
g

控制流图如下所示:
1

7
4
6

3

2
9
5
a

b
c

d
e

f
g

8
给定控制流图G的环形复杂度—V(G),定义为
V(G) = E-N+2
其中,E是控制流图中边的数量,N是控制流图中的节点数量。

所以根据控制流图可知环形复杂度为:
V(G) = E-N+2 = 11 – 9 + 2 = 4

根据控制流图可知其独立路径有:
程序的独立路径集合有4种:
1: 1-2-9;
2:1-2-3-4-8-2-9;
3:1-2-3-5-7-8-2-9;
4:1-2-3-5-6-8-2-9;

接着使用边界值分析方法设计测试用例:

n i x y
-1 0 0 0
0 0 0) 0
1 0 2 0
1 1 20 0
1 2 0 10
1 10 0 10
1 1000 0 10

三、 实验总结
这次的实验加深了对软件测试的“白盒测试原理”的了解,在设计软件测试代码的过
程中通过网上搜索资料也从中学习到了很多周边的知识。在这次的实验过程中最重要的是
了解到
白盒测试的优缺点,及其在军工软件、航天航空软件、工业控制软件等等上的
运用

指导教师 日期
注:请用A4纸书写,不够另附纸。
第 页,共 页