L3={枪机:枪机=0或枪机<-1} L3={枪机:枪机>70} S2={枪托:枪托<1} S3={枪托:枪托>80} B2={枪管:枪管<1} B2={枪管:枪管>90}
当枪机等于-1时,while循环就会终止,总枪机、总枪托和总枪管的值就会被用来计算销售额,进而计算佣金。额外强健壮等价类测试用例三维立方的一个“角”是:
用例ID SR1 SR2 SR3 SR4 SR5 SR6 SR7 枪机 -1 35 35 -1 -1 35 -1 枪托 40 -1 40 -1 40 -1 -1 枪管 45 45 -1 45 -1 -1 -1 预期输出 枪机值不在有效值域1..70中 枪托值不在有效值域1..80中 枪管值不在有效值域1..90中 枪机值不在有效值域1..70中 枪托值不在有效值域1..80中 枪机值不在有效值域1..70中 枪管值不在有效值域1..90中 枪托值不在有效值域1..80中 枪管值不在有效值域1..90中 枪机值不在有效值域1..70中 枪托值不在有效值域1..80中 枪管值不在有效值域1..90中 7
实验三 结构性测试(1学时)
一、实验目的
(1)掌握路径覆盖测试的基本方法
二、实验要求
(1)完成各个程序的编写
(2)运用逻辑覆盖测试的覆盖准则设计被测程序的测试用例,并运行测试用例检查程序的正确与否
三、实验内容
(1)设计某程序的路径覆盖测试用例,如路径覆盖、条件覆盖、分支覆盖、循环覆盖等 伪代码程序如下:
1 Input(X)
2 If A>1 and B=0 then 3 X=X/A 4 End if
5 If A=2 then 6 X=X+1 7 else
8 X=X-1 9 End if 10 Output(X)
A 1
B 2
C 3
D 4
E 5
F 7 G 6
H 8
I 9 10
程序图 DD-路径图 DD-路径(只压缩链路经) 程序图节点 DD-路径 8
1 2 3 4 5 6 7,8 9 10 (I)语句覆盖:
A-B-D-E-F-H-I 或 A-B-C-D-E-F-H-I
测试用例:(输入值和预期输出值省略) 用例ID 1 输入值 A 2 B 1 X 3 A B C D E F G H I 执行路径 A-B-D-E-F-H-I 预期输出 A 2 B 1 X 4 (II)分支覆盖(判断覆盖):
A-B-D-E-F-H-I(1.左,2.左) A-B-C-D-E-G-H-I(1.右,2.右) 或
A-B-D-E-G-H-I(1.左,2.右) A-B-C-D-E-F-H-I(1.右,2.左)
思考:是否还有其它的路径组合能达到分支覆盖的要求?
测试用例:(输入值和预期输出值省略) 用例ID 1 2 输入值 A 1 3 B 0 0 X 3 3 执行路径 A-B-D-E-G-H-I A-B-C-D-E-FH-I 预期输出 A 1 3 B 0 0 X 2 0
(III)路径覆盖:
A-B-D-E-F-H-I (1.左,2.左) A-B-D-E-G-H-I (1.左,2.右) A-B-C-D-E-F-H-I (1.右,2.左) A-B-C-D-E-G-H-I (1.右,2.右)
测试用例:(输入值和预期输出值省略) 用例ID 1 2
输入值 A 0 1 B 1 0 X 3 3 执行路径 A-B-D-E-G-H-I A-B-D-E-G-H-I 9
预期输出 A 0 1 B 1 0 X 2 2 3 4 2 2 1 0 3 4 A-B-C-D-E-F-H-I A-B-C-D-E-G-H-I 2 2 1 0 4 3 (IV)条件覆盖:各个条件取真或假的可能至少执行一次
A>1 F F T T
A=2 T F 覆盖路径 E-F-H E-G-H B=0 F T F T A>1 and B=0 F F F T 覆盖路径 B-D B-D B-D B-C-D
测试用例:(输入值和预期输出值省略) 用例ID 1 2 3 4
输入值 A 1 1 2 2 B 1 0 1 0 X 4 4 4 4 执行路径 A-B-D-E-G-H-I A-B-D-E-G-H-I A-B-D-E-F-H-I A-B-C-D-E-F-H-I 预期输出 A 1 1 2 2 B 1 0 1 0 X 3 3 5 3 10
实验四 找出实例程序的缺陷(2学时)
一、实验目的
通过对于实例程序的测试,熟悉功能性测试和结构性测试的基本方法。
二、实验要求
(1)综合运用功能性、结构性测试方法对被测程序进行测试,找出black.exe、white.exe、naive.exe程序中存在的缺陷。
三、实验内容
(1)对于black.exe程序的测试(white.exe,naive.exe的测试过程类似) 步骤:
①运行black.exe程序,如下图所示:
②选择triangle program后(或nextdate program, commission program),如下图所示:
③点击create file names,如下图所示:
11