软件测试期末复习资料
④每当某一规则的条件已经满足,并确定要执行的操作后,不必检验别的规则。
⑤如果某一规则得到满足要执行多个操作,这些操作的执行顺序无关紧要。
4、例:
1、某公司为本科以上学历的人重新分配工作,分配原则如下:
(1)如果年龄不满18岁,学历是本科,男性要求报考研究生,女性则担任行政工作。
(2)如果年龄满18岁不满50岁,学历本科,不分男女,任中层领导职务,学历是硕士,不分男女,任课题组组长。
软件测试从开发生命周期的阶段来划分,可
分为:
需求评审
设计评审
单元测试
集成测试
功能测试
系统测试
验收测试
5、软件测试和开发的关系
下面是W模型,还有V模型。
6、软件开发模型包括:瀑布模型、螺旋模型、增量模型
7、测试过程中,测试计划描述用于描述测试的整体方案,测试缺陷报告描述依据测试案例找出的问题。
8、什么是驱动模块,什么是桩模块
(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
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
原因:
1.售货机有零钱找
2.投入1元硬币
3.投入5角硬币
4.押下橙汁按钮
5.押下啤酒按钮
结果:
21.售货机〖零钱找完〗灯亮
22.退还1元硬币
23.退还5角硬币
24.送出橙汁饮料
25.送出啤酒饮料
5、复习因果图实验
四、决策表
1、概念
在一些数据处理问题中,某些操作是否实施依赖于多个逻辑条件的取值。
在这些逻辑条件取值的组合所构成的多种情况下,分别执行不同的操作。
发现软件系统的缺陷、错误及不足
获取软件产品的质量信息
预防下一版可能出现的问题
预防用户使用软件时可能出现的问题
提前发现开发过程中的问题和风险
提供可以用以分析的测试结果数据
3、缺陷定义
软件缺陷就是软件产品中所存在的问题,最终表现为用户所需要的功能没有完全实现,不能满足或不能全部满足用户的需求。
4、软件测试分类
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
一、等价类划分
例题:
等价类测试用例的设计:
弱一般等价类
强一般等价类
弱健壮等价类
强健壮等价类
函数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
测试用例编号
用户名
密码
邮箱
年龄
预期输出
abc123456
cde111200
139@
20
dtgfyu
cde111200
139@
20
abc123456
124689545
139@
20
abc123456
cde111200
Wrf.512
20
abc123456
cde111200
语句覆盖
判断覆盖
条件覆盖
判断/条件覆盖
路径覆盖
例:设计一个函数,函数功能描述如下:
设计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
程序流程图
③由于语法或环境的限制,有些原因和结果的组合情况是不可能出现的。为表明这些特定的情况,在因果图上使用若干个特殊的符号标明约束条件。
④把因果图转换成判定表。
⑤把判定表中每一列表示的情况写成测试用例。
3、例1:
软件规格说明书
“第一列字符必须是#或*,第二列字符必须是一个数字,在此情况下进行文件的修改。但如果第一列字符不正确,则给出信息N,如果第二列字符不是数字,则给出信息M。”
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
重点:按照软件内部的结构测试程序,软件中的每条通路是否都能按预定要求正确工作
穷举路径测试:早期发现软件缺陷最有效的方法
2、白盒测试VS黑盒测试
黑盒测试:
不涉及程序结构
用软件规格说明生成测试用例
某些代码段得不到测试
可适用于从单元测试到系统联试
需要用白盒测试加以补充
白盒测试:
考查程序逻辑结构
用程序结构信息生成测试用例
139@
jjk
二、边界值分析
1、边界值的取值:(正确的数据)
最小值(min)
稍高于最小值(min+)
正常值(nom)
稍低于最大值(max-)
最大值(max)
例1:程序的规格说明:“重量在10~50公斤范围内的邮件,其计算邮费……”,测试用例选择:取10公斤,10.01公斤,25公斤,49.99公斤,50公斤
12、黑盒测试优点
黑盒测试不考虑软件的具体实现,当软件内部实现发生变化时,测试用例仍然可以使用
黑盒测试用例的设计可以和软件开发同时进行,这样能够压缩总的开发时间
黑盒测试适用于各个测试阶段
从产品功能角度进行测试
13、黑盒测试缺点
某些代码得不到测试
无法发现软件需求说明书本身的错误
不易进行充分性测试
对一些外购软件,参数化软件包以及某些自动生成的软件,由于无法得到源程序,只能选择黑盒测试对其进行测试
驱动模块:用以模拟被测模块的上级模块,用来驱动或传送测试用例给被测模块。
桩模块:模拟被测程序被调用模块,以便检查被测模块与其下级模块之间的接口
9、什么是兼容性测试
检测软件之间能否正确地交互和共享信息,其目标是保证软件按照用户期望的方式进行交互,是用其他软件检查软件操作过程。
黑盒测试定义
黑盒测试是在已知软件产品的功能设计的情况下,对其进行测试,以确认其是否实现了软件产品的功能要求。
处理这类问题的一个非常有力的分析和表达工具是决策表,或判定表(Decision Table)
2、判定表的组成
条件桩、条件项、动作桩、动作项和规则
3、适合使用决策表设计测试用例的情况有
①规格说明以判定表形式给出,或是很容易转换成判定表。
②条件的排列顺序不会也不应影响执行哪些操作。
③规则的排列顺序不会也不应影响执行哪些操作。
黑盒测试不考虑程序内部的逻辑结构和内部特性,只依据软件的需求功能说明进行
10、动态测试的基本要素:被测试程序,测试用例
11、黑盒测试具体任务
是否有不正确的功能,是否有遗漏的功能
在接口上,是否能够正确地接收输入数据并产生正确的输出结果
是否有数据结构错误或外部信息访问错误
性能上是否能够满足要求,是否有程序初始化和终止方面的错误
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、弱健壮等价类(强一般等价类+其中一个变量取无效值,其他变量取有效值的情况)
分析原因和结果:
原因: