《软件测试概论》实验东莞理工学院计算机学院学号:201241402102姓名:温燕姿班级:12计科1班指导教师:张福勇地点:7A202,时间:2014-11-4实验四基路径测试一、实验目的(实验所要达到那些目的)1、理解基路径测试的原理和方法。2、掌握由基路径产生测试用例的方法。3、能够对软件进行基路径测试。二、实验内容或实验过程(实验所做的内容)内容:1、自编软件的基路径测试:(只测主要函数或过程)1)、由给定软件规格说明书写出源程序并运行。(见附录)2)、用基路径方法产生测试用例。3)、运行软件,输入测试用例并记录结果。4)、分析结果,调试源程序。(注意:调试前一定要保存上一个版本)5)、重复步骤3),直到所有测试用例的输出与预期的一致。附录1规格说明:编制一元二次方程式AX2+BX+C=0的求根程序。程序有以下功能:1.输入A、B、C三个系数;-200=A、B、C=2002.输出根的性质的信息:包括两个相等实根、两个不相等的实根、一个实根、两个虚根、有无数根、无根等。过程:先编写出就一元二次方程式的求根程序,给每一句代码标号,并画出流程图,再根据流程图画出DD路径图,再找出所有的基路径,最后依照基路径设计测试用例。三、实验中出错信息及处理方法(可选)四、实验结果(包括实验处理结果和设计心得)程序代码:1.#includestdio.h《软件测试概论》实验东莞理工学院计算机学院2.voidformula(inta,intb,intc){3.inti=0;4.i=b*b-4*a*c;5.if(a-200||a200||b-200||b200||c-200||c200){6.printf(输入的系数有误\n);}7.else{8.if(a==0){9.if(b==0){10.if(c==0)11.printf(此二元一次方程有无数个根\n);12.elseprintf(此二元一次方程无根\n);}13.elseprintf(此二元一次方程有1个实根);}14.if(a!=0){15.if(i0)16.printf(此二元一次方程有2个不相等的实根);17.if(i==0)18.printf(此二元一次方程有2个相等的实根);19.elseprintf(此二元一次方程有2个虚根);}20.}21.}22.voidmain(){23.inta,b,c;24.printf(请输入一元二次方程Ax^2+Bx+C的系数ABC:(注意:输入以逗号为间隔;ABC均为整数,且每个数都在-200到+200间));25.scanf(%d,%d,%d,&a,&b,&c);26.formula(a,b,c);27.}程序图如下:12223《软件测试概论》实验东莞理工学院计算机学院23567981110041213141516171819202124262725《软件测试概论》实验东莞理工学院计算机学院相应的DD路径图如下:A:1,2,3,4,5,22,23,24,25,26B:6C:7D:14E:8F:19G:17,18H:15,16I:13J:9K:12L:10,11M:20N:21O:27基路径:P1:A-C-E-J-L-M-N-OP2:A-B-N-OP3:A-C-D-H-M-N-OP4:A-C-E-I-M-N-OP5:A-C-E-J-K-M-N-OP6:A-C-D-G-M-N-OP7:A-C-D-F-M-N-O处理结果:所有的预计输出和实际输出是一样的设计心得:通过这次实验我知道了:设计基路径测试用例的关键是画出DD路径图找全基路径。需要注意的是要找准基路径对应的if条件的真假。测试用例如下:CEDIFBALGHKJNOM《软件测试概论》实验东莞理工学院计算机学院用例ID输入数据预期输出对应基路径1a=0,b=0,c=0有无数根P12a=-201,b=0,c=0系数有误P23a=3,b=4,c=12个不等实根P34a=0,b=1,c=31个实根P45a=0,b=0,c=3无根P56a=2,b=4,c=22个相等实根P67a=2,b=3,c=22个虚根P7