3.1 软件设计说明导出的测试
测试用例通过根据相关的软件设计说明文档进行设计。每个测试用例测试设计说明中一项或多项陈述。通常为被测单元设计说明的一系列陈述建立一系列对应的设计用例。
例1:考虑下面计算实数平方根的函数的设计说明:
输入:实数
输出:实数
处理:当输入0或大于0时,返回输入数的平方根;当输入小于0时,显示:“Square root
error - illegal negative input",并返回0;库函数Print_Line用于显示出错信息。
设计说明有3个陈述,可以2个测试用例来对应。
Test Case 1:输入4,返回2。 //执行第一个陈述
Test Case 2:输入-10,返回0,显示“Square root error - illegal negative input”//对应第二个和第三个陈述
设计说明导出的测试用例提供了与被测单元设计说明陈述序列很好的对应关系,增强了测试说明的可读性和可维护性。但有软件设计说明导出测试是正面的测试用例设计技术。软件设计说明导出的测试应该用负面测试用例进行补充,以提供一个完整的单元测试说明。
设计说明导出的测试设计技术还可用于安全分析、保密分析、软件冒险分析和其他给单元设计的其他补充文档。
3.2 基本路径测试
基本路径测试是一种白盒测试技术。测试用例设计者导出一个过程设计的逻辑复杂性测度,并使用改测度作为指南来定义执行路径的基本集,从该基本集导出的测试用例保证对程序中的每一条执行语句至少执行一次。
基本路径测试的方法步骤如下:
3.2.1 画出控制流图
C/C++语句中的控制语句表示如下:
图中的每一个圆称为流图的节点,代表一条或多条语句。流图中的箭头称为边或连接,
代表控制流。
任何过程设计都要被翻译成控制流图。如下面的C 函数:
void Sort(int iRecordNum,int iType)
0 {
1 int x=0;
2 int y=0;
3 while (iRecordNum--)
4 {
5 if(0= =iType)
6 x=y+2;
7 else
8 if(1= =iType)
9 x=y+10;
10 else
11 x=y+20;
12 }
13 }
文章来源于领测软件测试网 https://www.ltesting.net/