软件测试复习Word文档下载推荐.docx
《软件测试复习Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《软件测试复习Word文档下载推荐.docx(17页珍藏版)》请在冰豆网上搜索。
路径覆盖>
条件组合覆盖>
判定/条件覆盖>
条件覆盖>
判定覆盖>
语句覆盖
12、黑盒测试(Black-BoxTesting)、优缺点、原则、策略
黑盒测试又称功能测试、数据驱动测试或基于需求规格说明书的功能测试。
该测试方法验证被测对象使用质量及外部质量表现。
优缺点:
优点:
1.比较简单,不需要了解程序的内部的代码及实现2.与软件的内部实现无关3.从用户的角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题4.基于软件开发文档,所以也能知道软件实现了文档中的哪些功能5.在做软件自动化测试时较为方便
缺点:
1.不可能覆盖所有的代码,覆盖率较低,大概只能达到总代码量的30%
2.自动化测试的复用性较低。
1.根据软件规格说明书设计测试用例,规格说明书的正确性是至关重要的。
2.有针对性地查找问题,并且正确定位等价类。
3.检查功能是否有缺陷或错误现象。
4.根据测试的重要性来确定测试等级和测试重点,减少程序可能出现的缺陷。
5.检查在接口处输入的信息是否能正确接受,以及接受后能否输出正确的结果。
6.认真选择测试策略,尽可能发现程序的数据结构错误或外部信息访问错误,站在用户角度进行测试。
策略:
1.在任何情况下都必须采用边界值分析法。
这种方法设计出来的测试用例对发现程序的错误是非常有用的。
2.必要时采用等价类划分法补充测试用例。
3.对照程序逻辑,检查已设计的测试用例的逻辑覆盖程度。
如果它没有达到要求的覆盖标准,则应当补充更多的测试用例。
4.如果程序的功能说明中含有输入条件的组合情况则应该一开始选用因果图法。
5.对于业务流清晰的系统,可以利用场景法贯穿整个测试案例过程,在案例中综合使用各种测试方法。
13、按要求给出下列程序的测试用例(要求写出必要的说明):
a)语句覆盖
b)判定覆盖
c)条件覆盖
d)判定-条件覆盖
e)条件组合覆盖
图中共有4条路径:
P1(ace)、P2(abd)、P3(abe)、P4(acd)。
1.P1正好满足语句覆盖的条件。
可以设计如下的输入数据:
A=2,B=0,x=4
2.测试用例如果能够测试路径P1(ace)和P2(abd),就可以满足判定覆盖要求。
可以设计如下两组输入数据:
A=1,B=1,x=1
3.条件:
A>1,B=0,A=2,x>1。
需要有足够的测试用例使得上述四个条件都能有满足和不满足的情况。
以下这两组输入数据能满足这些要求:
4.判定/条件覆盖
5.可能的条件组合:
(1)A>1,B=0
(2)A>1,B≠0
(3)A≤1,B=0
(4)A≤1,B≠0
(5)A=2,x>1
(6)A=2,x≤1
(7)A≠2,x>1
(8)A≠2,x≤1
相应的输入数据:
A=2,B=0,x=4满足
(1)和(5)
A=2,B=1,x=1满足
(2)和(6)
A=1,B=0,x=2满足(3)和(7)
A=1,B=1,x=1满足(4)和(8)
14、使用基本路径测试方法,为以下程序段设计测试用例。
(1)画出程序的控制流图,编号已经给出。
(2)计算程序的循环复杂度,导出程序基本路径集中的独立路径条数。
(3)导出基本路径集,确定程序的独立路径。
(4)根据(3)中的独立路径,设计测试用例(确保基本路径集中的每一条路径的执行)的输入数据和预期输出。
voidDo(intX,intA,intB)
{
1if((A>
1)&
&
(B=0))
2X=X/A;
3if((A=2)||(X>
1))
1.画出控制流图:
2.计算环形复杂度:
10(条边)-7(个节点)+2=5
3.导出独立路径(用语句编号表示)
路径1:
1→2→3→4→5→6→7
路径2:
1→4→5→6→7
路径3:
1→2→4→6→7
路径4:
1→2→4→5→7
路径5:
1→2→3→4→5→7
测试用例
用例号
路径
输入数据
ABX
预期输出
X
TC1
306
3
TC2
013
4
TC3
211
2
TC4
310
TC5
303
1
15、NextDate(年,月,日)是三个变量的函数。
函数返回输入日期的下一个日期。
变量年份,月份,日期都是整数值,且满足下面的条件:
1900≤年≤2060,1≤月≤12,1≤日≤31.设计合理的等价类划分方法。
条件
有效等价类
编号
无效等价类
年
[1900,2060]
年<
1900
年>
2060
5
月
[1,12]
月<
6
月>
12
7
日
[1,31]
日<
8
日>
31
9
16、等价类划分法、等价类划分的方法和原则
等价类划分是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例。
该方法是一种重要的,常用的黑盒测试用例设计方法。
方法:
按区间划分、按数值划分、按数值集合划分、按限制条件或规划划分、按处理方式划分。
1.在输入条件规定的取值范围或值的个数的情况下,可以确定一个有效等价类和两个无效等价类。
2.在规定了输入数据的一组值中(假定有n个值),并且程序要对每个输入值分别处理的情况下,可以确定n个有效等价类和一个无效等价类。
3.在规定输入数据必须遵守的规则的情况下,可以确定一个有效等价类和若干个无效等价类。
4.在输入条件规定了输入值的集合或规定了“必须如何”的条件下,可以确定一个有效等价类和一个无效等价类。
5.在确定已划分的等价类中各元素在程序处理中的方式不同的情况下,则应将该等价类进一步地划分为更小的等价类。
17、P101实例1实例2
18、软件测试过程
基本分为测试计划、测试设计、测试实现、测试执行4个阶段。
进一步可细分为测试计划与控制、测试分析与设计、测试实现与执行、评估出口准则与报告、测试结束活动(ISTQB划分方法)。
19、单元测试的主要任务
1模块接口测试;
2模块局部数据结构测试;
3模块边界条件测试;
4模块中所有独立执行通路测试;
5模块的各条错误处理通路测试。
20、QTP自动化测试的流程
录制测试脚本前的准备(Preparation)、录制测试脚本(Record)、加强测试脚本(Enhance)、对测试脚本排错(Debug)、执行测试脚本(Run)、分析测试结果(Analyze)、回报问题(Defect)
21、集成测试的原则
1所有公共接口都要被测试到2关键模块必须进行充分的测试3集成测试应当按一定的层次进行4集成测试的策略选择应当综合考虑质量、成本和进度之间的关系5集成测试应当尽早开始,并已总体设计为基础6在模块与接口的划分上,测试人员应当和开发人员进行充分的沟通7当接口发生修改时,涉及的相关接口必须进行再测试8测试执行结果应当如实的记录。
22、性能测试的核心原理、目标、主要应用领域
核心原理:
1.基于协议2.多线程:
一个线程一个用户3.任务调度
目标:
验证软件系统是否能够达到用户提出的性能指标,同时发现软件系统中存在的性能瓶颈,优化软件,最后起到优化系统的目的。
主要应用领域:
能力验证、规划能力、性能调优、瓶颈发现、性能基准比较
23、响应时间(Responsetime)
以用户角度而言,响应时间是用户发出请求到接收到响应结果这个过程所消耗的时间。
对于服务器而言,响应时间则是接收到用户请求到发出响应结果这个过程所消耗的时间。
通常情况下,测试工程师会从用户角度考虑,故响应时间一般表示为客户端发请求到收到结果过程的处理时间。
24、吞吐量
吐量是指在单位时间内中央处理器(CPU)从存储设备读取->
处理->
存储信息的量。
25、负载测试、压力测试、负载测试与压力测试的区别
负载测试是指在超过被测对象标准性能负荷指标下,验证系统的负载承受能力,并要求在超负荷时,被测对象依然能够正常实现业务功能。
压力测试测试被测对象在超过性能指标的饱和状态下,系统处理业务的能力情况,以及系统是否会出现错误。
区别:
1.负载测试是通过改变系统负载方式、增加负载等来发现系统中所存在的性能问题。
负载测试是一种测试方法,可以为性能测试、压力测试所采用。
2.性能测试是为获取或验证系统性能指标而进行测试。
多数情况下,性能测试会在不同负载情况下进行。
3.压力测试通常是在高负载情况下来对系统的稳定性进行测试,更有效地发现系统稳定性的隐患和系统在负载峰值的条件下功能隐患等。
26、可靠性测试、可恢复测试
可靠性测试是验证被测对象在规定时间、规定环境条件下,实现规定功能或性能的能力。
可恢复测试是测试一个系统从灾难或出错中能否很好地恢复的过程,如遇到系统崩溃、硬件损坏或其他灾难性出错。
可恢复测试一-般是通过人为的各种强制性手段让软件或硬件出现故障,然后检测系统是否能正确的恢复(自动恢复和人工恢复)。
27、使用LoadRunner完成性能测试步骤
计划测试、生成测试脚本、建立场景、运行场景、监视场景、分析测试结果
28、系统测试主要内容、测试类型、系统测试过程、常用的方法
主要内容:
1.功能测试。
即测试软件系统的功能是否正确,其依据是需求文档,由于正确性是软件最重要的质量因素,所以功能测试必不可少。
2.健壮性测试。
即测试软件系统在异常情况下能否正常运行的能力。
类型:
恢复测试、安全测试、压力测试。
过程:
制定系统测试计划、设计系统测试用例、执行系统测试、缺陷管理与改错。
黑盒测试和白盒测试
29、α(Alpha)测试和β(Beta)测试
α测试是指软件开发公司组织内部人员模拟各类用户对即将面市软件产品(称为α版本)进行测试,试图发现错误并修正。
α测试的关键在于尽可能逼真地模拟实际运行环境和用户对软件产品的操作并尽最大努力涵盖所有可能的用户操作方式。
Beta测试是一种验收测试。
所谓验收测试是软件产品完成了功能测试和系统测试之后,在产品发布之前所进行的软件测试活动,它是技术测试的最后一个阶段,通过了验收测试,产品就会进入发布阶段。
30、回归测试、目的、范围、方法
回归测试是指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误。
目的:
在程序有修改的情况下保证原有功能正常的一种测试策略和方法,因为这时的测试不需要进行全面测试,从头到尾测一遍,而是根据修改的情况进行有效测试。
范围:
删除过时的测试用例、改进不受控制的测试用例、删除冗余的测试用例、增添新的测试用例
再测试全部用例、基于风险选择测试、基于操作剖面选择测试
31、三角形问题:
输入三个整数,这三个值分别表示三角形三条边的长度,请(判断)这个三角形是等边三角形,还是等腰三角形还是不等边三角形并打印相应的结果。
a,b,c分别代表输入的整数,给出三角形问题的决策表和对应的测试用例。
决策表:
10
11
a<
b+c
F
T
b<
a+c
-
c<
b+a
a=b
a=c
b=c
非三角形
√
不等边三角形
等腰三角形
等边三角形
不适用
测试用例:
规则1:
测试输入=(60,16,26),预期结果=非三角形
规则2:
测试输入=(50,50,0),预期结果=非三角形
规则3:
测试输入=(0,0,0),预期结果=非三角形
规则4:
测试输入=(60,60,60),预期结果=等边三角形
规则5:
这种组合在现实中不可能存在
规则6:
规则7:
测试输入=(60,60,26),预期结果=等腰三角形
规则8:
规则9:
测试输入=
(60,
26,
60),预期结果=等腰三角形
规则10:
(26,
60,
规则11:
(30,
40,
50),预期结果=不等边三角形
32、NextDate(年,月,日)是三个变量的函数。
1900≤年≤2060,1≤月≤12,1≤日≤31。
给出NextDate问题的扩展项决策表和测试用例.
年份的值包括Y1={闰年}、Y2={平年}
月份的值包括M1={31天的月,除去12月}、M2={30天的月}、M3={2月}、M4={12月}
日期的值包括D1={从1到27}、D2={28}、D3={29}、D4={30}、D5={31}
扩展项决策表:
13
月在
M1
M2
M3
M4
日is
D1,D2,D3,D4
D5
D1,D2,D3
D4
D1,D2
D3
D4,D5
D1
D2
年is
Y1
Y2
日期+1
日期为1
月份—+1
月份为1
年份+1
N/A
测试用例:
测试输入=(2007,7,19),预期结果=“2007-7-20”
测试输入=(2007,7,31),预期结果=“2007-8-1”
测试输入=(2007,9,25),预期结果=“2007-9-26”
测试输入=(2007,9,30),预期结果=“2007-10-1”
(2007,11,31),预期结果=“日期输入错误”
(2000,2,15),预期结果=“2000-2-16”
(2000,2,29),预期结果=“2000-3-1”
(2000,2,30),预期结果=“日期输入错误”
测试输入=(2007,2,15),预期结果=“2007-2-16”
测试输入=(2007,2,28),预期结果=“2007-3-1”
测试输入=(2007,2,28),预期结果=“日期输入错误”
规则12:
测试输入=(2006,12,16),预期结果=“2006-12-17”
规则13:
测试输入=(2006,12,31),预期结果=“2007-1-1”
33、正交表行数(即试验次数)=∑列数*(每列水平数-1)+1
某系统有5个独立变量(A,B,C,D,E),变量A和B都有两个取值(A1、A2)和(B1、B2)。
变量C和D都有三个可能的取值(C1、C2、C3和D1、D2、D3)变量E有六个可能的取值(E1、E2、E3、E4、E5、E6),选择合适的正交表。
A1
B1
C1
E1
C2
E2
B2
E3
C3
E4
E5
E6
A2
14
15
16
17
18
34、某城市的电话号码由三部分组成。
这三部分的名称和内容分别是
地区码:
空白或三位数字;
前缀:
非’0’或’1’开头的三位数;
后缀:
四位数字。
假定被调试的程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的号码,试用等价分类法来设计它的调试用例。
37、场景要求:
”……对功率大于50马力的机器、维修记录不全或已运行10年以上的机器,应给予优先的维修处理……”。
这里假定,“维修记录不全”和“优先维修处理”均已在别处有更严格的定义。
请建立决策表。
(1)确定规则的个数。
(2)列出所有的条件桩和动作桩。
(3)填入条件项。
(4)填入动作项,得到初始决策表。
(5)简化决策表,合并相似规则。
①确定规则的个数:
有2*2*2=8种规则。
②列出所有的条件茬和动作桩。
③填入条件项。
可从最后1行条件项开始,逐行向上填满。
如第三行是:
YNYNYNYN,第二行是:
YYNNYYNN等等。
④填入动作桩和动作顶。
这样便得到形如图的初始判定表。
条
件
功率大于50马力吗?
Y
N
维修记录不全吗?
运行超过10年吗?
动
作
进行优先处理
x
作其他处理
⑤化简。
合并相似规则后得到图。
38、如果某产品销售好并且库存低,则增加该产品的生产;
如果该产品销售好,但库存量不低,则继续生产;
若该产品销售不好,但库存量低,则继续生产;
若该产品销售不好,且库存量不低,则停止生产。
1.确定规则的个数:
对于本题有2个条件(销售、库存),每个条件可以有两个取值,故有2*2=4种规则。
2.列出所有的条件桩和动作桩。
3.填入条件项。
4.填入动作项,得到初始决策表
39、有一个处理单价为1元5角的盒装饮料的自动售货机软件。
若投入1元5角硬币,按下“可乐”,“雪碧”或“红茶”按钮,相应的饮料就送出来。
若投入的是两元硬币,在送出饮料的同时退还5角硬币。
给出决策表和对应的测试用例