软件测试

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.从正反两个方面理解什么是软件测试

软件测试是由“验证(verification)”和“有效性确认(validation)”活动构成的整体:

“验证”是检验软件是否已正确地实现了产品规格书所定义的系统功能和特性

“有效性确认”是确认所开发的软件是否满足用户真正需求的活动

2.理解软件测试的风险观点和经济观点

风险:软件测试就是对风险的不断评估,引导软件开发的工作。进而将最终发布的软件所存在的风险降到最低。

经济:以最小的代价获得最高的软件产品质量。要求软件测试尽早开展工作,发现缺陷越早,返工的工作量就越小,所造成的损失就越小。

3.从V模型理解软件测试与软件开发的关系、各阶段的测试任务p11

4.理解测试驱动开发的思想

测试驱动开发(TDD)——测试在先、编码在后的开发方法

5.软件缺陷产生的原因

技术问题软件本身团队工作

6.SQA和软件测试的关系

SQA和软件测试之间相辅相成,存在包含和交叉的关系。SQA指导、监督软件测试的计划和执行,督促测试工作的结果客观、准确和有效,并协助测试流程的改进。软件测试弟SQA 的重要手段之一,为SQA提供所需的数据,作为质量评价的客观依据。

7.测试工作流程的6个方面

1测试组织和管理2测试计划3测试用例设计4测试实施5测试结果分析6测试评审与报告

8.软件测试的工作范畴

软件测试工作的组织与管理:制定测试策略、测试计划,确认所采用的测试方法与范围,控制测试进度,管理测试资源

测试工作的实施:编制符合标准的测试文档,搭建测试环境,开发测试脚本、与开发组织协作实现各阶段的测试活动

9.白盒测试概念、方法

也称结构测试或逻辑测试。能够看清楚事物的内部,即了解事物的内部结构和运行机制,通过剖析事物内部结构和运行机制来出来和解决问题。

方法:语句覆盖判定覆盖条件覆盖判定—条件覆盖条件组合覆盖路径覆盖基本路径测试法

10.黑盒测试概念、方法

也称功能测试或数据驱动测试。通过分析事物的输入、输出以及周边条件来分析和处理问题。方法:等价类划分法边界值分析法判定表方法因果图法正交试验法功能图法错误推测法

。。静态测试:就是静态分析。对模块的源代码进行研读,查找错误或收集一些度量数据,并不需要对代码进行编译和仿真运行。

动态测试:通过真正运行程序发现错误,通过观察代码运行过程,来获取系统行为、变量实时结果、内存、堆栈、线程以及测试覆盖度等各方面的信息,来判断系统是否存在问题,或者通过有效的测试用例,对应的输入输出关系来分析被测程序的运行情况,来发现缺陷。11.主动测试和被动测试的概念和区别p50

主动测试:测试人员主动向测试对象发送请求,或借助数据、事件驱动被测试对象的行为,从而验证被测试对象的反应或输出结果。

被动测试:软件产品运行在实际环境中,测试人员不干预产品的运行,而是被动地监控产品

的运行,通过一定的被动机制来获得系统运行的数据,包括输入、输出数据。关键是建立监控程序(代理),并通过数据分析掌握系统的状态。

区别:主动测试中,测试人员需要设计测试用例、尽力设法输入各种数据,而在被动测试中,系统运行过程中各种数据自然而然地产生,测试人员不需要设计测试用例,只要设法获得系统运行的各种数据,但数据的完整性得不到保证。

12.基于风险的测试的过程和好处p59

过程:

1列出软件的所有功能和特性

2确定每个功能出错的可能性

3如果某个功能出错或欠缺某个特征,需要评估对用户使用软件产品的影响程度

4根据上面两个步骤,计算风险度

5根据可能出错的迹象,来修改风险度

6决定测试的范围,编写测试方案

好处:根据事情的轻重缓急来决定测试工作的重点

13.测试过程改进模型的几个基本概念:TMap,TMM,TPI,CTP p69-78

TMap(Test Management Approach,测试管理方法):是一种结构化的、基于风险策略的测试方法体系

TMM:测试成熟度模型

TPI:是基于连续性表示法的测试过程改进的参考模型,是在软件控制、测试知识以及过往经验的基础上开发出来的

CTP:(Critical Test Process,关键测试过程):评估模型主要是一个内容参考模型,一个上下文相关的方法,并能对模型进行剪裁

14.软件测试规范的内容p86

1角色的确定2进入的准则3输入项4活动过程5输出项 6 验证与确认7退出的准则8度量

15.建立测试管理与评价体系的六大过程p90

1测试规划2测试设计3测试实施4配置管理5资源管理 6 测试管理

16.单元测试的定义,目标,任务p95、97

定义:单元测试是对软件基本组成单元进行的测试,而且软件单元是在与程序的其他部分相隔离的情况下进行单独的测试

目标:确保各个单元模块被正确地编码(主要目标)。测试代码的功能性、确保代码在结构上可靠且健全,能够在各种条件下给予正确的响应

任务:1单元中所有独立执行路径测试:保证单元中每条语句至少能被执行一次(基本任务)

2.单元局部数据结构测试

3单元借口测试

4单元边界条件测试

5单元的各条错误处理通路测试

6内存分析

17.单元测试各个过程p109

1计划阶段2设计阶段3执行阶段4评估阶段5提交阶段

18.理解集成测试的模式,方法p126

模式:非渐增模式渐增模式

方法:自顶向下、自底向上、大棒、三明治

19.理解桩程序和驱动程序p107

桩程序:也称桩模块,用以模拟被测模块工作过程中所调用的下层模块

驱动程序:也称驱动模块,用以模拟被测模块的上级模块,能够调用被测模块

20.理解回归测试的过程p133

1识别出软件中被修改的部分

2从原基线测试用例库T中,排除所有不再适用的测试用例,确定那些对新的软件版本依然有效的测试用例,其结果是建立一个新的基线测试用例库T0

3依据一定的策略从T0中选择测试用例测试被修改的软件

4如果回归测试包不能达到所需的覆盖要求,必须补充新的测试用例使覆盖率达到规定的要求,生成新的测试用例集T1,用于测试T0无法充分测试的软件部分

5用T1执行修改后的软件

21.性能测试,压力测试,容量测试,安全性测试和可靠性测试的定义p134-141

性能测试:

压力测试(stress test):也称强度测试、负载测试。是模拟实际应用的软硬件环境及用户使用过程的系统负荷,长时间或超大负荷地运行测试软件,来测试被测系统的性能、可靠性、稳定性等

容量测试(capacity test):预先分析出反映软件系统应用特征的某项指标是极限值

安全性测试:检查系统对非法侵入的防范能力

可靠性测试:也称软件可靠性评估,指根据软件系统可靠性结构(单元与系统间可靠关系)、寿命类型和各单元的可靠性试验信息,利用概率统计方法,评估出系统的可靠性特征量22.验收测试是谁完成的?为什么?P147

一般由用户和测试部门共同完成,如果是软件公司自行研发的产品,让产品设计部门、市场部门、技术支持等参与测试

23.验收测试的步骤和注意事项p147

步骤:

1编制验收测试计划、测试项、测试策略及验收通过准则,并让客户参与计划评审,直至通过

2建立测试环境,完成测试用例的设计,并经过评审

3准备测试数据,执行测试用例,记录测试结果

4分析测试结果,根据验收通过准则分析测试结果,做出验收是否通过及测试评价

5提交测试报告

注意事项:

1必须编写正式的、单独的验收测试计划

2验收测试必须在实际运行环境中或尽可能模拟实际的环境中进行

3验收测试一般由用户和测试部门共同完成,如果是软件公司自行研发的产品,让产品设计部门、市场部门、技术支持等参与测试

24.34. a测试和b测试?P148

α测试:软件开发供词组织内部人员模拟各类用户对即将面世的软件产品(称为α版本)进行测试,试图发现错误并修正。

β测试:软件开发公司组织各方面的典型用户在日常工作中实际使用β版本,并要求用户报告异常情况、提出批评意见。

35. 面向对象软件测试与传统软件测试的不同P157

传统软件开发采用面向过程、面向功能的方法,将程序系统模块化,在此基础上还可以再分成若干个单元,这些单元可以通过一系列程序过程实现,也产生相应的单元测试、集成测试等方法。面向对象程序的结构不再是传统的功能模块结构,将开发分为面向对

相关文档
最新文档