最新软件测试期末复习资料.docx
《最新软件测试期末复习资料.docx》由会员分享,可在线阅读,更多相关《最新软件测试期末复习资料.docx(24页珍藏版)》请在冰点文库上搜索。
最新软件测试期末复习资料
一、等价类划分
例题:
等价类测试用例的设计:
●弱一般等价类
●强一般等价类
●弱健壮等价类
●强健壮等价类
函数f(x,y)有两个输入变量,x的取值范围是[10,30],y的取值范围[40,70]
根据需求:
x的有效等价类为[10,20],[21,30],无效等价类<10,>30
y的有效等价类为[40,50],[51,60],[61,70]无效等价类<40,>70
1、弱一般等价类测试用例(x和y的有效等价类的值至少取一次即可)
测试用例编号
X
y
预期输出
15
45
25
55
15
65
2、强一般等价类测试用例(x和y的有效等价类的值做笛卡尔乘积)
测试用例编号
X
y
预期输出
15
45
15
55
15
65
25
45
25
55
25
65
3、弱健壮等价类(强一般等价类+其中一个变量取无效值,其他变量取有效值的情况)
测试用例编号
X
y
预期输出
15
45
15
55
15
65
25
45
25
55
25
65
5
45
5
55
5
65
35
45
35
55
35
65
15
35
25
35
15
75
25
75
4、强健壮等价类(在弱健壮等价类的基础上+都取无效值的情况,只是针对两个变量)
测试用例编号
X
y
预期输出
15
45
15
55
15
65
25
45
25
55
25
65
5
45
5
55
5
65
35
45
35
55
35
65
15
35
25
35
15
75
25
75
5
35
5
35
5
75
5
75
35
35
35
35
35
75
35
75
注册界面的需求如下:
●用户名和密码6-20的字母数字组合
●邮箱满足xxx@xxx.xx格式
●年龄必须是数字
写出有效等价类和无效等价类,再写出弱健壮等价类测试用例
有效等价类
无效等价类
用户名
1、6-20的字母数字组合
5、全字母
6、全数字
7、<6位的字母数字组合
8、>20位的字母数字组合
密码
2、6-20的字母数字组合
9、全字母
10、全数字
11、<6位的字母数字组合
8、>20位的字母数字组合
邮箱
3、XXX@XXX.XX格式
17、非XXX@XXX.XX格式
年龄
4、数字
18、非数字
弱健壮等价类测试用例
测试用例编号
我们认为:
创业是一个整合的过程,它需要合作、互助。
大学生创业“独木难支”。
在知识经济时代,事业的成功来自于合作,团队精神。
创业更能培养了我们的团队精神。
我们一个集体的智慧、力量一定能够展示我们当代大学生的耐心.勇气和坚强的毅力。
能够努力克服自身的弱点,取得创业的成功。
用户名
自制性手工艺品。
自制饰品其实很简单,工艺一点也不复杂。
近两年来,由于手机的普及,自制的手机挂坠特别受欢迎。
密码
邮箱
十字绣□编制类□银饰制品类□串珠首饰类□年龄
自制性手工艺品。
自制饰品其实很简单,工艺一点也不复杂。
近两年来,由于手机的普及,自制的手机挂坠特别受欢迎。
预期输出
abc123456
(二)大学生对DIY手工艺品消费态度分析cde111200
在上海,随着轨道交通的发展,地铁商铺应运而生,并且在重要商圈已经形成一定的气候,投资经营地铁商铺逐渐为一大热门。
在人民广场地下的迪美购物中心,有一家DIY自制饰品店--“碧芝自制饰品店”139@
20
dtgfyu
cde111200
139@
20
此次调查以女生为主,男生只占很少比例,调查发现58%的学生月生活费基本在400元左右,其具体分布如(图1-1)abc123456
124689545
功能性手工艺品。
不同的玉石具有不同的功效,比如石榴石可以促进血液循环,改善风湿和关节炎;白水晶则可以增强记忆力;茶晶能够帮助镇定情绪,缓解失眠、头昏等症状。
顾客可以根据自己的需要和喜好自行搭配,每一件都独一无二、与众不同。
139@
20
abc123456
就算你买手工艺品来送给朋友也是一份意义非凡的绝佳礼品哦。
而这一份礼物于在工艺品店买的现成的礼品相比,就有价值意义,虽然它的成本比较低但它毕竟它是你花心血花时间去完成的。
就像现在最流行的针织围巾,为何会如此深得人心,更有人称它为温暖牌绝大部分多是因为这个原因哦。
而且还可以锻炼你的动手能力,不仅实用还有很大的装饰功用哦。
cde111200
beadorks公司成功地创造了这样一种气氛:
商店和顾客不再是单纯的买卖关系,营业员只是起着参谋的作用,顾客成为商品或者说是作品的作参与者,营业员和顾客互相交流切磋,成为一个共同的创作体Wrf.512
20
abc123456
cde111200
139@
jjk
二、边界值分析
1、边界值的取值:
(正确的数据)
●最小值(min)
●稍高于最小值(min+)
●正常值(nom)
●稍低于最大值(max-)
●最大值(max)
例1:
程序的规格说明:
“重量在10~50公斤范围内的邮件,其计算邮费……”,测试用例选择:
取10公斤,10.01公斤,25公斤,49.99公斤,50公斤
2、边界值测试用例
例,已知函数f(x,y),x的取值为[10,20],y的取值为[50,80]。
第一步,找出x和y的边界值:
X的边界值:
10,11,15,19,20
Y的边界值:
50,51,65,79,80
第二步,写边界值测试用例。
测试用例编号
X
Y
预期输出
15
50
15
51
15
65
15
79
15
80
10
65
11
65
15
65
19
65
20
65
3、健壮测试用例
取值,除了上面5个值以外,一个略超过最大值的取值(max+),以及一个略小于最小值(min-)的取值。
例,已知函数f(x,y),x的取值为[10,20],y的取值为[50,80]。
第一步,找出x和y的边界值:
X的边界值:
9,10,11,15,19,20,21
Y的边界值:
49,50,51,65,79,80,81
第二步,写边界值测试用例。
测试用例编号
X
Y
预期输出
15
49
15
50
15
51
15
65
15
79
15
80
15
81
9
65
10
65
11
65
15
65
19
65
20
65
21
65
4、练习边界值实验的内容。
三、因果图
1、概念
因果图方法(Cause一EffectGraphics):
一种黑盒测试方法
方法的依据:
需求规格说明中的因果关系
能够帮助我们按一定步骤,高效率地选择测试用例,同时还指出,程序规格说明描述中存在着的问题。
2、因果图方法最终生成决策表,导出用例需要经过以下几个步骤:
①分析程序规格说明的描述中,哪些是原因,哪些是结果。
原因常常是输入条件或是输入条件的等价类。
而结果是输出条件。
②分析程序规格说明的描述中语义的内容,并将其表示成连接各个原因与各个结果的“因果图”。
③由于语法或环境的限制,有些原因和结果的组合情况是不可能出现的。
为表明这些特定的情况,在因果图上使用若干个特殊的符号标明约束条件。
④把因果图转换成判定表。
⑤把判定表中每一列表示的情况写成测试用例。
3、例1:
软件规格说明书
“第一列字符必须是#或*,第二列字符必须是一个数字,在此情况下进行文件的修改。
但如果第一列字符不正确,则给出信息N,如果第二列字符不是数字,则给出信息M。
”
分析原因和结果:
原因:
C1——第一列字符是#;
C2——第一列字符是*;
C3——第二列字符是一数字。
结果:
E1——第一列字符不是#,*给出信息N;
E2——修改文件;
E3——第二列字符不是数字给出信息M。
4、例2:
有一个处理单价为5角钱的饮料的自动售货机软件测试用例的设计。
其规格说明如下:
若投入5角钱或1元钱的硬币,押下〖橙汁〗或〖啤酒〗的按钮,则相应的饮料就送出来。
若售货机没有零钱找,则一个显示〖零钱找完〗的红灯亮,这时在投入1元硬币并押下按钮后,饮料不送出来而且1元硬币也退出来;若有零钱找,则显示〖零钱找完〗的红灯灭,在送出饮料的同时退还5角硬币。
原因:
1.售货机有零钱找
2.投入1元硬币
3.投入5角硬币
4.押下橙汁按钮
5.押下啤酒按钮
结果:
21.售货机〖零钱找完〗灯亮
22.退还1元硬币
23.退还5角硬币
24.送出橙汁饮料
25.送出啤酒饮料
5、复习因果图实验
四、决策表
1、概念
在一些数据处理问题中,某些操作是否实施依赖于多个逻辑条件的取值。
在这些逻辑条件取值的组合所构成的多种情况下,分别执行不同的操作。
处理这类问题的一个非常有力的分析和表达工具是决策表,或判定表(DecisionTable)
2、判定表的组成
条件桩、条件项、动作桩、动作项和规则
3、适合使用决策表设计测试用例的情况有
①规格说明以判定表形式给出,或是很容易转换成判定表。
②条件的排列顺序不会也不应影响执行哪些操作。
③规则的排列顺序不会也不应影响执行哪些操作。
④每当某一规则的条件已经满足,并确定要执行的操作后,不必检验别的规则。
⑤如果某一规则得到满足要执行多个操作,这些操作的执行顺序无关紧要。
4、例:
1、某公司为本科以上学历的人重新分配工作,分配原则如下:
(1)如果年龄不满18岁,学历是本科,男性要求报考研究生,女性则担任行政工作。
(2)如果年龄满18岁不满50岁,学历本科,不分男女,任中层领导职务,学历是硕士,不分男女,任课题组组长。
(3)如果年龄满50岁,学历本科,男性任科研人员,女性则担任资料员,学历是硕士不分男女,任课题组组长。
要求:
找出条件和动作,画出分析过程,得出决策表,并进行化简。
五、白盒逻辑覆盖
1、什么是白盒测试?
相对黑盒测试而言
也称结构测试或逻辑驱动测试
前提:
知道软件产品内部工作过程
目标:
通过测试来检测软件产品内部动作是否按照规格说明书的规定正常进行
重点:
按照软件内部的结构测试程序,软件中的每条通路是否都能按预定要求正确工作
穷举路径测试:
早期发现软件缺陷最有效的方法
2、白盒测试VS黑盒测试
黑盒测试:
不涉及程序结构
用软件规格说明生成测试用例
某些代码段得不到测试
可适用于从单元测试到系统联试
需要用白盒测试加以补充
白盒测试:
考查程序逻辑结构
用程序结构信息生成测试用例
通常适用于单元测试和集成测试
3、白盒测试的主要目的:
保证一个模块中的所有独立路径至少被执行一次;
对所有的逻辑值均需要测试真、假两个分支;
在上下边界及可操作范围内运行所有循环;
检查内部数据结构以确保其有效性。
4、逻辑覆盖
以程序内部的逻辑结构为基础设计测试用例,要求对被测程序的逻辑结构有清楚的了解,
逻辑结构可分为:
语句覆盖
判断覆盖
条件覆盖
判断/条件覆盖
路径覆盖
例:
设计一个函数,函数功能描述如下:
●设计DoWork函数,函数有三个整形参数,x,y,z,
●当输入参数x>3且z<10时计算k=x*y-1,j=Sqrt(k)语句块1
●当输入参数x==4或y>5时计算j=x*y+10语句块2
●最后输出j%3的值.语句块3
程序流程图
试验内容要求:
(1)编写语句覆盖测试用例
●当输入参数x>3且z<10时计算k=x*y-1,j=Sqrt(k)语句块1
(2)当输入参数x==4或y>5时计算j=x*y+10
测试用例
x变量1
y变量2
z变量3
语句覆盖
4
6
9
1,2,3
(3)编写判断覆盖测试用例
测试用例
变量1
变量2
变量3
所走路径
判断分支
4
6
9
2
4
11
(4)编写条件覆盖测试用例
条件说明:
(自己填写)
X>3取真值
X>3取假值
Z<10取真值
Z<10取假值
X==4取真值
X==4取假值
Y>5取真值
Y>5取假值
T1
~T1
T2
~T2
T3
~T3
T4
~T4
测试用例格式参考
测试用例
x变量1
y变量2
z变量3
所走路径
覆盖条件
4
6
9
T1,t2,T3,T4
2
4
11
~T1,~T2,~T3,~T4
(5)编写条件/判断覆盖测试用例
组合情况:
(自己填写)
1
2
3
4
5
6
7
8
X>3,Z<10
X>3,Z>=10
X<=3,Z<10
X<=3,Z>10
X==4,Y>5
X==4,Y<=5
X!
=4,Y>5
X!
=4,Y<=5
测试用例格式参考
测试用例
X变量1
Y变量2
Z变量3
所走路径
覆盖组合
4
6
9
1,5
4
4
11
2,6
2
6
9
3,7
2
4
11
4,8
6、编写路径覆盖测试用例
测试用例格式参考
测试用例
变量1
变量2
变量3
所走路径
六、基础知识
1、软件测试的概念
使用人工或者自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。
2、测试的目的
●验证软件需求和功能是否得到完整实现
●验证软件是否可以发布使用
●发现软件系统的缺陷、错误及不足
●获取软件产品的质量信息
●预防下一版可能出现的问题
●预防用户使用软件时可能出现的问题
●提前发现开发过程中的问题和风险
●提供可以用以分析的测试结果数据
3、缺陷定义
软件缺陷就是软件产品中所存在的问题,最终表现为用户所需要的功能没有完全实现,不能满足或不能全部满足用户的需求。
4、软件测试分类
软件测试从开发生命周期的阶段来划分,可
分为:
需求评审
设计评审
单元测试
集成测试
功能测试
系统测试
验收测试
5、软件测试和开发的关系
下面是W模型,还有V模型。
6、软件开发模型包括:
瀑布模型、螺旋模型、增量模型
7、测试过程中,测试计划描述用于描述测试的整体方案,测试缺陷报告描述依据测试案例找出的问题。
8、什么是驱动模块,什么是桩模块
驱动模块:
用以模拟被测模块的上级模块,用来驱动或传送测试用例给被测模块。
桩模块:
模拟被测程序被调用模块,以便检查被测模块与其下级模块之间的接口
9、什么是兼容性测试
检测软件之间能否正确地交互和共享信息,其目标是保证软件按照用户期望的方式进行交互,是用其他软件检查软件操作过程。
黑盒测试定义
黑盒测试是在已知软件产品的功能设计的情况下,对其进行测试,以确认其是否实现了软件产品的功能要求。
黑盒测试不考虑程序内部的逻辑结构和内部特性,只依据软件的需求功能说明进行
10、动态测试的基本要素:
被测试程序,测试用例
11、黑盒测试具体任务
是否有不正确的功能,是否有遗漏的功能
在接口上,是否能够正确地接收输入数据并产生正确的输出结果
是否有数据结构错误或外部信息访问错误
性能上是否能够满足要求,是否有程序初始化和终止方面的错误
12、黑盒测试优点
黑盒测试不考虑软件的具体实现,当软件内部实现发生变化时,测试用例仍然可以使用
黑盒测试用例的设计可以和软件开发同时进行,这样能够压缩总的开发时间
黑盒测试适用于各个测试阶段
从产品功能角度进行测试
13、黑盒测试缺点
某些代码得不到测试
无法发现软件需求说明书本身的错误
不易进行充分性测试
对一些外购软件,参数化软件包以及某些自动生成的软件,由于无法得到源程序,只能选择黑盒测试对其进行测试
14、单元测试的测试依据,黑盒测试的测试依据,白盒测试的测试依据
黑盒测试依据:
软件规格说明书;
白盒测试依据:
详细设计说明书
15、集成测试包括哪两种,分别是什么
增量集成测试和非增量集成测试。
增量集成测试:
就是不断的将待测试的模块连接到已侧过的模块集上,对代测模块进行测试,直到最后一个模块测试完毕。
非增量集成测试:
先对N个模块进行单元测试
将所有模块集成到一起,把连接后的程序当做一个整体进行测试。
16、集成测试的内容:
①集成测试也叫组装测试或者联合测试;
②在把各个模块连接起来的时候,穿越模块接口的数据是否会丢失;
③一个模块的功能是否会对另一个模块的功能产生不利的影响;
④各个子功能组合起来,能否达到预期要求的父功能;
⑤全局数据结构是否有问题;
⑥单个模块的误差累积起来,是否会放大,从而达到不能接受的程度
17、测试设计员的职责包括:
设计测试用例,设计测试过程、脚本。
18、软件开发周期包括需求、架构、设计、编码和维护
19、什么是黑盒测试、什么是白盒测试
黑盒测试:
(1)是在已知软件产品的功能设计的情况下,对其进行测试,以确认其是否实现了软件产品的功能要求。
(2)黑盒测试不考虑程序内部的逻辑结构和内部特性,只依据软件的需求功能说明进行
白盒测试:
⏹相对黑盒测试而言
⏹也称结构测试或逻辑驱动测试
⏹前提:
知道软件产品内部工作过程
⏹目标:
通过测试来检测软件产品内部动作是否按照规格说明书的规定正常进行
⏹重点:
按照软件内部的结构测试程序,软件中的每条通路是否都能按预定要求正工作
⏹穷举路径测试:
早期发现软件缺陷最有效的方法
20、软件测试按照测试层次可以分为:
单元测试、集成测试和系统测试
21、黑盒测试方法有哪几种,白盒测试方法有哪几种
黑盒测试:
黑盒测试等价类划分、边界值分析、决策表测试、因果图
白盒测试:
代码检测法、静态结构分析法、静态质量试题法、逻辑覆盖法、基本路径测试法、域测试、符号测试、路径覆盖、程序变异
22、软件质量特性是指软件的功能性、可靠性、易用性、效率、可维护性、可移植性
23、缺陷改正的越早,代价·越小,因此如果软件需求说明书出错,是导致软件缺陷最大的原因
24、什么是调试
在测试过程中,可能会发现被测软件当中存在错误,当测试发现了错误,这个确定错误原因以及纠正错误的过程叫做调试。
25、缺陷修复代价:
缺陷发现的越早,缺陷修复的代价越小。
26、什么是单元测试
单元测试是开发人员对于程序的每个单元的测试工作,是软件开发过程中的首次测试活动,或者说是开发人员针对软件设计的最小单位——程序模块进行的测试工作。
27、什么是压力测试
Web服务的特点:
●Web服务处于分布式计算的核心位置,它们之间的交互通常很难测试。
●分布式开发可能使Web服务的开发变得越来越容易隐藏错误。
压力测试是检测这些代码的有效方法,要弄清被测的web服务是不是能够做我们认为能做的事,而且在被施加强度压力的情况下仍然继续正常工作。
28、分别解释如下概念:
条件覆盖、语句覆盖、判定覆盖、条件/判定覆盖和路径覆盖。
1、语句覆盖:
要求设计若干测试用例,运行被测程序,使程序中的每个可执行语句至少被执行一次。
2、条件覆盖:
要求设计若干测试用例,运行被测程序,使程序中的每个判断的每个条件的可能取值至少被执行一次。
3、判定覆盖:
要求设计若干测试用例,运行被测程序,使程序中的每个判断的取真分支和取假分支至少被执行一次,即判断的真假值均要被检测。
4、条件/判定覆盖:
要求设计若干测试用例,运行被测程序,使判断中每个条件的所有可能取值至少被执行一次。
同时每个判断的所有可能判断结果也至少执行一次。
5、路径覆盖:
要求设计若干测试用例,运行被测程序,覆盖程序中所有可能的路径