一、实验目的和要求
⑴ 熟练掌握白盒测试方法中的逻辑覆盖和路径测试覆盖方法。
⑵ 通过实验掌握逻辑覆盖测试的测试用例设计,掌握程序流图的绘制。
⑶ 运用所学理论,完成实验研究的基本训练过程.
二、实验内容和原理(c语言)
{
1 int k=0,j=0;int x,y, z;
2 (x>0)
3 (z<10)
{
4 k=x*y-1;
5 j=sqrt(k);
}
6 (x==4)
7 (y>5)
8 j=x*y+10;
9 j=j%3;
10}
说明: 程序段中每行开头的数字(1-10)是对每句语句的编号。
三、操作方法与实验步骤
⑴ 画出程序的控制流图(用题中给出的语句编号表示)。
⑵ 分别以语句覆盖、判定覆盖、条件覆盖和基本路径覆盖法设计测试用例,并写出每个测试用例的执行路径(用题中给出的语句编号表示)。
⑶ 编写完整的 C 程序(含输入和输出),使用你所设计的测试用例运行上述程序段。完整填写相应的测试用例表(语句覆盖测试用例表、判定覆盖(分支覆盖)测试用例表、条件覆盖测试用例表和基本路径测试用例表)。
一. 1.程序流程图
2.程序流图
测试用例:
语句覆盖:
x=3 y=6 z=3 序号 12345678910 路径 abdfgijmn
判定覆盖:
x=4 y=6 z=3 序号 1234568910 路径 abdfghmn
x=3 y=6 z=3 序号12345678910 路径 abdfgijmn
x=-1 y=5 z取任意值 序号 1267910 路径 acikn
条件覆盖:
x=4 y=5 z=11 序号12345678910 路径 abdfghmn
x=-1 y=6 z=3 序号12678910 路径 acijmn
基本路径覆盖:环路复杂性=13-10+2=5
x=4 y=6 z=3 序号1234568910 路径 abdfghmn
x=-1y=5z=11 序号1267910 路径 acikn
x=-1 y=6 z=3 序号12678910 路径 acijmn
x=3 y=6 z=11 序号123678910 路径 abeijmn
x=3 y=5 z=11 序号12367910 路径 abeikn
源程序:
#include<stdio.h>
#include<math.h>
int main()
{
int x, y, z;
printf("输入数字x,y,z");
scanf("%d",&x);
scanf("%d",&y);
scanf("%d",&z);
int k=0,j=0;
if ((x>0)&&(z<10))
{
k=x*y-1;
j=sqrt(k);
}
if ((x==4)||(y>5)){
j=x*y+10;
}
j=j%3;
printf("j= %d",j);
printf("k= %d",k);
}
四、实验数据记录和处理:
语句覆盖:
分支覆盖:
条件覆盖:
基本路径覆盖:
本文来自博客园,作者:一路向北~~,转载请注明原文链接:https://www.cnblogs.com/ylxb2539989915/p/16329456.html