软件测试技术实践考核上机练习题1004.docx
- 文档编号:2201992
- 上传时间:2022-10-27
- 格式:DOCX
- 页数:14
- 大小:20.87KB
软件测试技术实践考核上机练习题1004.docx
《软件测试技术实践考核上机练习题1004.docx》由会员分享,可在线阅读,更多相关《软件测试技术实践考核上机练习题1004.docx(14页珍藏版)》请在冰豆网上搜索。
软件测试技术实践考核上机练习题1004
软件测试技术实践考核上机考试基本要求(1004)
一、编程语言及上机环境
(1)C/C++编程语言
(2)VC++6.0及以上编译环境
二、考试内容
1、功能(黑盒)测试用例设计编程实现
(1)等价类划分法
(2)边界值分析法
(3)因果图法
(4)决策表法
2、结构(白盒)测试用例设计编程实现
(1)语句覆盖
(2)判定覆盖
(3)条件覆盖
(4)组合覆盖
(5)路径覆盖
(6)独立路径测试
三、上机考试程序
(1)考生抽取试题。
(2)排定考试座位(机位)。
(3)启动上机环境。
(4)开始考试。
(5)程序验收。
(6)适当的口试。
(7)成绩评定。
上机考试时间为120分钟。
上机考试成绩评定的依据主要是根据试题的完成情况和程序的运行结果,以及必要的口试。
四、考生注意事项
1、平时训练与考试
(1)思想重视
明确考试目的,端正考试态度,认真做好上机考试的准备工作。
(2)知识准备
平时认真学习,消化课程内容,熟悉编程环境和工具,认真做好课程实验。
(3)平时训练
应针对上机考试题型做好平时训练。
2、遵守考场纪律
对于下列情况之一者,实践课成绩为不及格。
(1)上机程序运行未通过。
(2)拷贝他人的上机程序。
(3)上机考试严重违纪。
软件测试技术实践考核上机考试练习题(1004)
练习题
(一)
1、NextDate函数问题说明:
输入一个日期,求从输入日期算起的第三天日期。
例如,输入为2008年8月8日,则该程序的输出为2008年8月10日。
NextDate函数包含三个整数变量month、day和year,并且满足下列条件:
1≤month≤12、1≤day≤31和2000≤year≤2100。
分析各种输入情况,列出为输入变量month、day、year划分的有效等价类:
输入等价类
输入
ID
有效等价类
day
1
1≤day≤26
2
day=27
3
day=28
4
day=29
5
day=30
6
day=31
month
7
month=4,6,9,11
8
month=1,3,5,7,8,10
9
month=2
10
month=12
year
11
闰年
12
非闰年
编程实现:
(1)对每一个有效等价类,至少设计一个测试用例。
输入格式:
输入(yyyymmdd):
输出格式:
输出(yyyy-mm-dd):
覆盖等价类(ID类型):
闰年(Y/N):
例如:
输入(yyyymmdd)↙(回车)
输出(yyyy-mm-dd):
2008-01-07
覆盖等价类(ID类型):
1,8,11
闰年(Y/N):
N
(2)对每一个无效的month、day和year,分别输入一个无效等价类。
例如:
输入(yyyymmdd)↙(回车)
输出(yyyy-mm-dd):
无效月份
覆盖等价类(ID类型):
闰年(Y/N):
2、阅读下面的一段程序:
voidTest1(intN,intI)
1{
2intx=0;
3inty=0;
4while(N-->0)
5{
6if(I==0)
7x=y+2;
8else
9if(I==1)
10y=y+10;
11else
12x=y+20;
13}//while
14}//Test1
根据所给定的程序,确定该程序的独立路径如下:
路径1:
4→14
路径2:
4→6→7→14
路径3:
4→6→9→10→4→14
路径4:
4→6→9→12→4→14
编程实现:
对每一个独立路径,设计一个测试用例,并插入一条显示输出语句(printf/cout),显示测试路径标号。
输入格式:
输入(N,I):
输出格式:
输出(x,y):
x=y=
路径ID:
例如:
输入(N,I):
1,2↙(回车)
输出(x,y):
x=20y=0
路径ID:
测试路径4
练习题
(二)
1、三角形问题说明:
输入三个正整数a、b、c,分别作为三角形的三条边,现通过程序判断由三条边构成的三角形的类型是否为等边三角形、等腰三角形、直角三角形、普通三角形以及非三角形。
根据问题的规格说明,可以从输出域划分5种等价类:
输出等价类
ID
条件
等价类
1
a=b∧b=c∧a=c∧(a+b>c∧b+c>a∧a+c>b)
等边三角形
2
a=b∨b=c∨a=c∧(a+b>c∧b+c>a∧a+c>b)
等腰三角形
3
a2+b2=c2∨b2+c2=a2∨a2+c2=b2∧(a+b>c∧b+c>a∧a+c>b)
直角三角形
4
a≠b∧b≠c∧a≠c∧(a+b>c∧b+c>a∧a+c>b)
普通三角形
5
(a+b≤c∨b+c≤a∨a+c≤b)∨a≤0∨b≤0∨c≤0
非三角形
编程实现:
(1)对每一个输出等价类,至少设计一个测试用例。
输入格式:
输入(a,b,c):
输出格式:
输出(ID类型):
例如:
输入(a,b,c):
5,5,5↙(回车)
输出(ID类型):
1(等边三角形),2(等腰三角形)
(2)假设10≤a,b,c≤100,根据划分的等价类,设计边界值测试用例。
例如:
输入(a,b,c):
60,60,10↙(回车)
输出(ID类型):
2(等腰三角形)
2、阅读下面的一段程序,
voidTest2(intX,intA,intB)
1{
2intk=0,j=0;
3if((A>1)&&(B=0))
4{
5X=X/A;
6k=A*B-1;
7}
8if((A==2)||(X>1))
9X=X+1;
10j=X+3;
11}//Test2
根据所给定的程序,确定该程序的独立路径如下:
路径1:
3→8→10→11
路径2:
3→5→6→8→10→11
路径3:
3→8→9→10→11
路径4:
3→5→6→8→9→10→11
编程实现:
对每一个独立路径,设计一个测试用例,并插入一条显示输出语句(printf/cout),显示测试路径标号。
输入格式:
输入(X,A,B):
输出格式:
输出(k,j):
k=j=
路径ID:
例如:
输入(X,A,B):
1,2,1↙(回车)
输出(k,j):
k=0j=5
路径ID:
测试路径4
练习题(三)
1、假设某保险公司的人寿保险的保费计算方式为:
投保额×保险费率。
其中,保险费率依点数不同而有别,具体规则见下表。
年龄
性别
婚姻
点数与保险费率
20-39
40-59
其它
男M
女F
已婚T
未婚F
≥10点A
<10点B
6点
4点
2点
5点
3点
3点
5点
0.6%
0.1%
根据问题的规格说明,从输入条件划分等价类。
输入等价类
输入
ID
有效等价类
ID
无效等价类
年龄
1
20-39岁
8
年龄小于1
2
40-59岁
3
其它年龄
性别
4
男性
9
除“M”“F”字符外
5
女性
婚姻
6
已婚
10
除“T”、“F”字符外
7
未婚
编程实现:
(1)对每一个有效等价类,至少设计一个测试用例。
输入格式:
输入(年龄-性别-婚姻):
输出格式:
输出(ID类型):
保险费率(%):
例如:
输入(年龄-性别-婚姻):
27,M,F↙(回车)
输出(ID类型):
1,4,7
保险费率(%):
0.6
(2)对每一个无效的输入,设计一个无效等价类,并设计测试用例。
例如:
输入(年龄-性别-婚姻):
27,M,X↙(回车)
输出(ID类型):
无效婚姻输入
保险费率(%):
2、阅读下面的一段程序,
voidTest3(intX,intY,intZ)
1{
2intk=0,j=0;
3if((X>3)&&(Z<10))
4{
5k=X*Y-1;
6j=sqrt(k);
7}
8if((X==4)||(Y>5))
9j=X*Y+10;
10j=j%3;
11}//Test3
根据所给定的程序,该程序的可能路径如下:
路径1:
1→2→3→5→6→8→9→10→11
路径2:
1→2→3→8→10→11
路径3:
1→2→3→8→9→10→11
路径4:
1→2→3→5→6→8→10→11
编程实现:
(1)设计测试用例,实现分支判定覆盖,使得每个判定中的真假值至少执行一次,并在判定路径中插入一条显示输出语句(printf/cout),输出路径标号。
输入格式:
输入(X,Y,Z):
输出格式:
输出(k,j):
k=j=
路径ID:
例如:
输入(X,Y,Z):
2,5,5↙(回车)
输出(k,j):
k=0j=0
路径ID:
路径2:
1→2→3→8→10→11
(2)设计测试用例,实现路径覆盖,使得每个可能路径至少执行一次。
输入格式:
输入(X,Y,Z):
输出格式:
输出(k,j):
k=j=
路径ID:
例如:
输入(X,Y,Z):
4,5,5↙(回车)
输出(k,j):
k=19j=0
路径ID:
路径1:
1→2→3→5→6→8→9→10→11
练习题(四)
1、某软件规格说明书对某二位编码的定义如下:
编码的第一个字符必须是A或B,第二个字符必须是一位数字,此情况下给出信息:
编码正确;如果第一个字符不是A或B,则给出信息:
编码错误;如果第一个字符是A或B,第二个字符不是数字,则给出信息:
修改编码。
根据问题的规格说明,列出因果表,将因果表转换成简化的决策表。
因果表
ID
原因(输入)
ID
结果(输出)
1
第一个字母是A
X
显示编码错误
2
第一个字母是B
Y
显示编码正确
3
第二个字母是数字
Z
显示修改编码
因果图转换成简化的决策表
规则
ID
1
2
3
4
5
1
2
3
Y
N
Y
Y
N
N
N
Y
Y
N
Y
N
N
N
Y/N
X
Y
Z
√
√
√
√
√
编程实现:
(1)对每一个规则,至少设计一个测试用例。
输入格式:
输入(编码XY):
输出格式:
输出(ID类型):
例如:
输入(编码XY):
A,A↙(回车)
输出(ID类型):
Z(修改编码)
(2)假设1≤Y≤9,设计边界值测试用例。
例如:
输入(XY):
A0↙(回车)
输出(ID类型):
X(编码错误)
2、阅读下面一段程序,程序的功能是:
计算学生的人数、学生成绩的平均值和总分数。
该程序运行最多输入50个学生成绩,以-1作为结束标志。
voidTest4(intn1,intsum,intaverage)
{
1inti=1,n1=n2=0,sum=0;
2while((score[i]<>-1)&&(n2<50))
3{
4n2=n2+1;
5if((score[i]>0)&&(score[i]<100))
6{
7n1=n1+1;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 测试 技术 实践 考核 上机 练习题 1004
![提示](https://static.bdocx.com/images/bang_tan.gif)