软件测试试题Word格式.docx
- 文档编号:20290853
- 上传时间:2023-01-21
- 格式:DOCX
- 页数:17
- 大小:503.50KB
软件测试试题Word格式.docx
《软件测试试题Word格式.docx》由会员分享,可在线阅读,更多相关《软件测试试题Word格式.docx(17页珍藏版)》请在冰豆网上搜索。
保费=投保额×
保险费率
其中,保险费率根据年龄、性别、婚姻状况与抚养人数得不同而有所不同,体现在不同年龄、性别、婚姻状况与抚养人数,点数设定不同。
10点以上保险费率为0、6%,10点及10点以下保险费率为0、1%;
而点数又就是由投保人得年龄、性别、婚姻状况与抚养人数来决定得,具体规则如下所示:
保险公司计算保费费率得规则
年龄
性别
婚姻
抚养人数
20~39
6点
40~59
4点
其她
2点
M
F
3点
已婚
未婚
5点
1人扣0、5点,
最多扣3点
假设投保额就是1万元,找出保险公司人寿保险保费计算程序得等价类测试用例。
对程序中各个输入条件得要求如下:
年龄就是一位或两位非零整数,值得有效范围为1~99;
性别就是一位英文字符,有效取值只能为‘M’(表示男性)或’F’(表示女性);
婚姻得有效取值只能为‘已婚’或‘未婚’;
抚养人数得有效取值可以就是空白或一位非零整数(1~9)。
(1)分析程序得规格说明,列出等价类表(包括有效等价类与无效等价类)。
(2)根据
(1)中得等价类表,设计能覆盖所有等价类得测试用例得输入数据与预期输出。
(1)
(2)
Homework3:
第7章:
一个处理单价为5元钱得饮料自动售货机软件测试用例得设计。
规格说明如下:
若投入5元钱或10元钱,按下“橙汁”或“啤酒”得按钮,则相应得饮料就送出来。
若售货机没有零钱找,则一个显示“零钱找完”得红灯亮,这时在投入10元钱并按下按钮后,饮料不送出来而且10元钱也退出来;
若有零钱找,则显示“零钱找完”得红灯灭,在送出饮料得同时退还5元钱。
构造因果图分析规格说明,用决策表设计测试用例。
1)分析这一段说明,列出原因与结果
原因:
1、售货机有零钱找
2、投入1元硬币
3、投入5角硬币
4、押下橙汁按钮
5、押下啤酒按钮
结果:
21、售货机〖零钱找完〗灯亮
22、退还1元硬币
23、退还5角硬币
24、送出橙汁饮料
25、送出啤酒饮料
2)画出因果图,如图3-11所示。
所有原因结点列在左边,所有结果结点列在右边。
建立中间结点,表示处理得中间状态。
中间结点:
11、投入1元硬币且押下饮料按钮
12、押下〖橙汁〗或〖啤酒〗得按钮
13、应当找5角零钱并且售货机有零钱找
14、钱已付清
图3-11:
售货机因果图
3)转换成判定表:
4)在判定表中,阴影部分表示因违反约束条件得不可能出现得情况,删去。
第16列与第32列因什么动作也没做,也删去。
最后可根据剩下得16列作为确定测试用例得依据。
Homework4:
第9章:
路径测试(测试覆盖指标)
1、练习一:
求解一元二次方程程序如下:
main()
{floata,b,c,x1,x2,mid;
scanf(“%f,%f,%f”,&
a,&
b,&
c);
if(a!
=0)
{mid=b*b-4*a*c;
if(mid>
0)
{x1=(-b+sqrt(mid))/(2*a);
x2=(-b-sqrt(mid))/(2*a);
printf(“tworealroots\n”);
}
else{if(mid==0)
{x1=-b/2*a;
printf(“onerealroot\n”);
else{x1=-b/(2*a);
x2=sqrt(-mid)/(2*a);
printf(“twocomplexroots\n”);
}
printf(“x1=%f,x2=%f\n”,x1,x2);
}
1、用语句覆盖准则对该程序设计测试用例;
2、用分支覆盖准则对该程序设计测试用例;
1、语句覆盖
由控制图可以很容易瞧到,可以只选3组(所有得点必须覆盖):
第1组:
2,5,3,
执行顺序为:
1,2,3,4,5,10,11,12,13
第2组:
1,2,1
1,2,3,4,5,6,8,9,11,12,13
第3组:
4,2,1
1,2,3,4,5,6,7,9,11,12,13
2、分支覆盖
由控制图可以很容易瞧到,可以只选4组(所有得边必须覆盖):
2,5,3(a!
=0,mid>
0),
1,2,1(a!
=0,mid=0),
4,2,1(a!
=0,mid<
第4组:
0,2,1(a=0)
1,2,3,13
练习二:
程序如下:
{inti,j,k,match;
scanf(“%d%d%d,&
i,&
j,&
k);
if(i<
=0‖j<
=0‖k<
=0‖i+j<
=k‖i+k<
=j‖j+k<
=i)match=4;
elseif(i==j&
&
i==k&
j==k)match=1;
elseif(i==j‖i==k‖j==k)match=2;
elsematch=3;
printf(“match=%d\n”,match);
用条件覆盖准则对该程序设计测试用例;
用分支-条件覆盖准则对该程序设计测试用例;
用组合覆盖准则对该程序设计测试用例;
分析:
三组判定:
(1)条件覆盖:
第一组:
if(a<
=0||b<
=0||c<
=0||a+b<
=c||b+c<
=a||c+a<
=b)
有6个条件
第二组:
if(a==b&
b==c&
c==a)有3个条件
第三组:
if(a==b||b==c||c==a)有3个条件
实际上只有9个条件
(a<
=0b<
=0c<
=0a+b<
=cb+c<
=ac+a<
=b)a==bb==cc==a
000TTTTTTTTT
234FFFFFFFFF
这样,2组测试用例,使得每个条件,至少各有一次“真”与“假”。
(2)分支-条件覆盖:
根据流程图,有4条分支:
测试用例为:
000match=1
234match=3
111match=4
223match=2
(3)条件组合覆盖:
Homework5:
第9章(基路径测试)
1、函数说明:
当i_flag=0;
返回
i_count+100
当i_flag=1;
i_count
*10
否则
返回
*20
输入参数:
inti_count
,
inti_flag
输出参数:
int
i_return;
代码:
1
int
Test(int
i_count,
i_flag)
2
{
3
i_temp
=
0;
4
while
(i_count>
5
6
if
(0
==
7
8
+
100;
9
break;
10
11
else
12
13
(1
14
15
10;
16
17
18
19
20;
20
21
22
i_count--;
23
24
return
i_temp;
25
用基路径测试方法,画出DD路径图,计算圈复杂度,并列出基路径,设计对应得测试用例。
(1)基本路径测试步骤:
1、导出程序流程图得拓扑结构—控制流图G
2、计算控制流图G得环路复杂度V(G)
环路复杂度就是一种为程序逻辑复杂性提供定量测试得软件度量。
将该度量用于计算程序得基本独立路径数目。
为确保所有语句至少执行一次得测试数量得上界。
简单得定义就就是控制流图得区域数目
3、确定只包含独立路径得基本路径集
4、设计测试用例
(2)控制流图
(3)计算流图G得环路复杂度V(G)
有三种方法计算环路复杂度:
1>
V(G)=区域个数=4
2>
V(G)=E-N+2,E就是流图中边得数量,N就是流图中结点得数量。
V(G)=10-8+2=4
3>
V(G)=P+1,P就是流图G中判定结点得数量
V(G)=3+1=4
(4)基本路径:
1B
(4,24)
2C,E,J
(4,6,8,24)
3C,D,F,H,A,B
(4,6,13,15,22,4,24)
4C,D,G,I,A,B
(4,6,13,19,22,4,24)
(5)测试用例:
1B(4,24)
输入数据:
i_flag=0,或者就是i_flag<
0得某一个值。
预期结果:
i_temp=0、
2C,E,J(4,6,8,24)
i_count=1;
i_flag=0
i_temp=101、
3C,D,F,H,A,B(4,6,13,15,22,4,24)
i_flag=1
i_temp=10、
4C,D,G,I,A,B(4,6,13,19,22,4,24)
输入数据:
i_flag=2
预期结果:
i_temp=20、
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 测试 试题