b
d
解答:
各类覆盖测试用例
使用逻辑覆盖测试方法测试以下程序段。 (15 分) void Do (int X,int A,int B) { ① if ( (A<4)&&(B=5) ) ② X=X/A;
③ if ( (A=2) || (X>1) ) ④ X=X+1; ⑤ }
说明:程序段中每行开头的数字(①至⑤)是对每条语句的编号。 (1)画出程序的控制流图(用题中给出的语句编号表示)。
(2)分别以语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖和路径覆盖方 法设计测试用例,并写出每个测试用例的执行路径。
请按要求回答问题。 (15 分) int isLeap(int year) {int leap;
① if (year % 4 = = 0) { ② ③ ④ ⑤ ⑥ ⑦
if (year % 100 = = 0) {else
leap = 1; }
else
leap = 0;
if ( year % 400 = = 0)
leap = 1; else
leap = 0; }
以下代码用于判断闰年,由 C 语言书写。其对应的控制流图如下图所示。
⑧ return leap; }
说明:写在前面的序号①-⑧为相应语句的编号。 1) 画出程序的控制流程图(使用给出的相应语句编号) 2) 请计算上述控制流图的圈复杂度 V(G)(独立线性路径数) 3) 找出独立路径(使用给出的相应语句编号)。
4) 假设输入的取值范围是 1000<year< 2001,请使用基本路径测试法为变量year设计测试用例,使其满足基本路径覆盖的要求(8 分) 用例 1:year 是 1000~2000 之间不能被 4 整除的整数,如 1001、1002、1003 等(2 分) 。
用例 2:year 是 1000~2000 之间能被 4 整除但不能被 100 整除的整数,如 1004、1008、1012、1016 等(2 分)。
用例3: year是1000~2000之间能被100整除但不能被400整除的整数, 如1100、1300、1400、1500、1700、1800、1900(2 分) 。 用例 4:year 是 1000~2000 之间能被 400 整除的整数,如 1200、1600、2000(2分) 。 2、以下代码由 C 语言书写,能根据指定的年、月计算当月所含天数。 int GetMaxDay( int year, int month ){ ① int maxday=0;
② if ( month>=1 && month<=12 ){ ③ ④ ⑤ ⑥
if ( month==2 ){
if ( year%4==0 ){
if(year%100==0){} else
⑨
} else
⑩
} else{ ⑾ ⑿ ⒀
}
⒁ return maxday;}
说明:写在前面的序号①-⒁为相应语句的编号。
1.画出程序的控制流程图(使用给出的相应语句编号) 2.请计算上述控制流图的圈复杂度 V(G)(独立线性路径数) 3.找出独立路径(使用给出的相应语句编号)。
某个软件的规格说明中包含了下面的要求:第一例字符必须是 A 或 B,第二列字符必须是一个数字,在此情况下进行文字的修改。但如果第一列字符不正确,则给出信息 L,如果第二列字符非数字,则给出信息 M。请用基于决策表的测 试方法进行测试,并设计测试用例覆盖每一种情况。 (15 分)
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/ruanjian/article-36049-19.html
是劣币驱逐良币
就武力收复
你儿子是哪个的种