软件测试复习.docx
- 文档编号:5476735
- 上传时间:2022-12-16
- 格式:DOCX
- 页数:17
- 大小:867.27KB
软件测试复习.docx
《软件测试复习.docx》由会员分享,可在线阅读,更多相关《软件测试复习.docx(17页珍藏版)》请在冰豆网上搜索。
软件测试复习
1、简述测试环境的要素
答:
硬件标准、软件配置、网络环境、数据准备、测试工具
2、简述搭建测试实验室的步骤
答:
机房环境建设、硬件环境的建立、网络环境的建立、软件环境的建立、对整个测试环境杀毒、测试环境说明及备案
3、软件生存周期
答:
软件生存周期又称为软件生命期,生存期。
是指从形成开发软件概念起,所开发的软件使用以后,直到失去使用价值消亡为止的整个过程。
一般来说,整个生存周期包括计划(定义)、开发、运行(维护)三个时期,每一个时期又划分为若干阶段。
每个阶段有明确的任务,这样使规模大、结构复杂和管理复杂的软件开发变得容易控制和管理。
4、软件缺陷(bug)
答:
软件缺陷常常又被叫做Bug。
所谓软件缺陷,即为计算机软件或程序中存在的某种破坏正常运行能力的问题、错误,或者隐藏的功能缺陷。
缺陷的存在会导致软件产品在某种程度上不能满足用户的需要。
5、软件质量的度量过程
答:
确认过程问题;收集过程数据;分析过程数据;解释过程数据;汇报过程分析;提出过程建议;实施过程行动;实施监督和控制。
6、白盒测试(WhiteBoxTesting)、原则
答:
白盒测试,又称结构测试、逻辑驱动测试或基于程序代码内部构成的测试。
此时,测试工程师需深入考查程序代码的内部结构、逻辑设计等。
原则:
1.保证一个模块中的所有路径至少被测试一次。
2.所有逻辑值都要测试真和假两种情况。
3.检查程序的内部数据结构是否有效。
4.检查上、下边界及可操作范围内运行的所有循环。
7、同行评审
答:
同行评审是一种通过评审对象作者同行确认缺陷和需要变更区域的检查方法。
在复杂的软件生产活动中,作者作为一个个体很难保证在其生产活动中完美无纰漏,也不能保证其自身能够发现相关问题,因此开展同行评审活动能够最大限度地避免遗漏问题出现,从而降低产品或项目风险。
8、静态分析及其内容
答:
指在不运行代码的方式下,通过词法分析、语法分析、控制流分析等技术对程序代码进行扫描,验证代码是否满足规范性、安全性、可靠性、可维护性等指标的一种代码分析技术。
9、代码检查方法
答:
所谓的代码检查就是以小组为单位,应用一系列的检查错误的技巧来发现程序中的缺陷和错误的过程,根据软件产品的规格大小,检查小组的规模也各不相同,每个小组都有其具有特色和作用的成员,代码检查是桌上检查之后的改进,目的是为了发现错误而不是改正错误。
10、逻辑覆盖及各种覆盖方法的强弱性排序
答:
逻辑覆盖是以程序内部的逻辑结构为基础的设计测试用例的技术。
强弱性:
路径覆盖>条件组合覆盖>判定/条件覆盖>条件覆盖>判定覆盖>语句覆盖
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=2,B=0,x=4
A=1,B=1,x=1
3.条件:
A>1,B=0,A=2,x>1。
需要有足够的测试用例使得上述四个条件都能有满足和不满足的情况。
以下这两组输入数据能满足这些要求:
A=2,B=0,x=4
A=1,B=1,x=1
4.判定/条件覆盖
A=2,B=0,x=4
A=1,B=1,x=1
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
1→2→3→4→5→6→7
306
3
TC2
1→4→5→6→7
013
4
TC3
1→2→4→6→7
211
2
TC4
1→2→4→5→7
310
0
TC5
1→2→3→4→5→7
303
1
15、NextDate(年,月,日)是三个变量的函数。
函数返回输入日期的下一个日期。
变量年份,月份,日期都是整数值,且满足下面的条件:
1900≤年≤2060,1≤月≤12,1≤日≤31.设计合理的等价类划分方法。
答:
条件
有效等价类
编号
无效等价类
编号
年
[1900,2060]
1
年<1900
4
年>2060
5
月
[1,12]
2
月<1
6
月>12
7
日
[1,31]
3
日<1
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分别代表输入的整数,给出三角形问题的决策表和对应的测试用例。
答:
决策表:
1
2
3
4
5
6
7
8
9
10
11
a
F
T
T
T
T
T
T
T
T
T
T
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 测试 复习