一、选择题
1.某程序输入X作为整数类型变量,5<=X<=20,如果用边界值分析法设 计测试用例,则X应该取( a )边界值。
A.4,5,20,21 B.5,20
C.4,21 D.5,8,10,20
2.软件测试是为了不断提高软件的( C )。
A.功能和效率 B.设计和技巧
C.质量和可靠性 D.质量和功能
3.以下属于静态测试方法的是(A )。
A.代码审查 B.判定覆盖
C.路径覆盖 D.语句覆盖
4.软件测试工作应该开始于( A )。
A.需求分析阶段 B.概要设计阶段
C.详细设计阶段 D.编码之后
5.软件测试的目的(c )
A.避免软件开发中出现的错误
B. 发现软件开发中出现的错误
C.尽可能发现并排除软件中潜藏的错误,提高软件的可靠性
D. 修改软件中出现的错误
6.开发Web应用时,要求软件能在Google Chrome中也能正常运行,这属于哪个质量属性要求?( C )
A .易用性 B .可维护性 C .兼容性 D .效率
7.开发软件时,要求软件运行时其CPU占有率要低于70%,这属于哪个质量属性要求?D
A .易用性 B .可维护性 C .兼容性 D .效率
8.下面对静态测试和动态测试的区别描述正确的是:B
A .静态测试需要借助于专门的测试工具,而动态测试不需要
B .静态测试并没有真正的运行软件,而动态测试需要运行软件
C .静态测试是由开发人员执行的,而动态测试是由专门的测试人员完成
D .静态测试是主要是为了增加测试人员对软件的理解,而动态测试是为了发现缺陷
9.针对main()函数定义了如下的出口准则要求:要求达到100%的判定覆盖。
变量i取下面的哪个值能效力最高的满足上述的出口准则要求?( C )
main()
{
int i,sum=0;
scanf("%d",&i);//输入变量i的取值;
while(i<=25)
{
sum=sum+i;
i++;
}
printf("%d\n",sum);//打印sum的值;
}
A.23 B.24 C.25 D.26
10.给定下列代码,至少要多少个测试用例(a、b、c取值组合)达到条件覆盖?( )B
Func GetMin(a, b, c)
IF (a < b .AND. a < c) THEN
Result = a
ELSE IF (b < a .AND. b < c) THEN
Result = b
ELSE
Result = c
END IF
return Result
A.2 B.3 C.4 D.5
11.医疗保险条例是这样的,如果身体有重要疾病,则不给予保险;如果没有重要疾病但是吸烟者,则给予保险,但没有优惠;如果没有重要疾病、也不吸烟但爱好滑雪,则给予保险且有10%优惠,其它则有15%优惠。用决策表方法,大概设计出有效测试用例数是多少?B
A.3 B.4 C.5 D.6
12.我们从某个输入区域中取一个数据进行测试,就完成这个输入域测试的方法是下列哪一个?A
A.等价类划分 B.决策表 C.因果图 D.正交试验法
13.( d)是选择若干个测试用例,运行被测程序,使得程序中的每个可执行语
句至少执行一次。
A.条件覆盖 B.组合覆盖 C.判定覆盖 D.语句覆盖
14.( a)是设计足够多的测试用例,使得程序中每个判定包含的每个条件的所
有情况(真/假)至少出现一次,并且每个判定本身的判定结果(真/假)也至少
出现一次。
A.判定-条件覆盖 B.组合覆盖 C.判定覆盖 D.条件覆盖
15.软件测试是软件质量保证的重要手段,下述哪种测试是软件测试的最基础环
节?( b )
A.功能测试 B.单元测试 C.结构测试 D.验收测试
二、简答题
1.用白盒测试(分支,条件,路径)
伪码程序如下:
Start
Input(A,B,C)
If A>5 then x=10
else x=1
Endif
If B>10 then y=20
else y=2
Endif
If C>15 then z=30
else z=3
Endif
Print(x,y,z)
Stop
2.请用条件覆盖测试法为下面java代码的测试设计测试用例。
程序流程图及流图如
条件覆盖策略:
设条件x >= 90为条件1,y >= 90为条件2,(x + y) >= 165为条件3, 则选择如下测试用例策略:
3.某保险公司承担人寿保险,该公司保费计算方式为:保费=投保额*保险率,保险率依点数不同而有别,10点以上(含10点)费率为0.6%,10点以下费率为0.1%
点数的计算是年龄、性别、婚姻、抚养人数所得的点数的总和
输入:年龄、性别、婚姻、抚养人数
输出:保险率
输入数据说明:
请用等价类划分的方法设计测试用例
解答:
第一步:输入和输出变量确认
- 输入:年龄、性别、婚姻、抚养人数
- 输出:保险率
- 等价类划分原则:按照输入变量来确认等价类(有效等价类和无效等价类)
第二步:等价类划分
第三步:设计测试用例
1、设计测试用例,尽可能的覆盖尚未覆盖的有效等价类。
- (1)(8)(10)(12)
- (2)(9)(11)(13)
- (3)(8)(10)(14)
2、设计测试用例,使得每一个新设计的测试用例只包含一个无效等价类,其他的选择有效等价类。
- (4)(8)(10)(12)
- (5)(9)(11)(13)
- (6)(8)(10)(14)
- (7)(8)(10)(14)
- (1)(8)(10)(15)
- (2)(9)(11)(16)
- (3)(8)(10)(17)
说明:在设计无效部分的测试用例的时候,有效等价类部分,可以任意选择。