第二章 软件测试与软件开发过程的关系
软件测试是软件开发过程的重要组成...

软件测试软件测试是软件开发过程的重要组成部分,是用来确认一个程序的品质或性能是否符合开发之前所提出的一些要求。
软件测试就是在软件投入运行前,对软件需求分析、设计规格说明和编码的最终复审,是软件质量保证的关键步骤。
软件测试是为了发现错误而执行程序的过程。
软件测试在软件生存期中横跨两个阶段:通常在编写出每一个模块之后就对它做必要的测试(称为单元测试)。
编码和单元测试属于软件生存期中的同一个阶段。
在结束这个阶段后对软件系统还要进行各种综合测试,这是软件生存期的另一个独立阶段,即测试阶段。
一、软件测试的目的软件测试的目的,第一是确认软件的质量,其一方面是确认软件做了你所期望的事情(Do the right thing),另一方面是确认软件以正确的方式来做了这个事件(Do it right)。
第二是提供信息,比如提供给开发人员或程序经理的反馈信息,为风险评估所准备的信息。
第三软件测试不仅是在测试软件产品的本身,而且还包括软件开发的过程。
如果一个软件产品开发完成之后发现了很多问题,这说明此软件开发过程很可能是有缺陷的。
因此软件测试的第三个目的是保证整个软件开发过程是高质量的。
软件质量是由几个方面来衡量的:一、在正确的时间用正确的的方法把一个工作做正确(Doing the right things right t the right time.)。
二、符合一些应用标准的要求,比如不同国家的用户不同的操作习惯和要求,项目工程中的可维护性、可测试性等要求。
三、质量本身就是软件达到了最开始所设定的要求,而代码的优美或精巧的技巧并不代表软件的高质量(Qulity is deined s conormnce to requirements, not s “goodness” or “elegnce”.)。
四、质量也代表着它符合客户的需要(Qulity lso mens “meet customer needs”.)。
作为软件测试这个行业,最重要的一件事就是从客户的需求出发,从客户的角度去看产品,客户会怎么去使用这个产品,使用过程中会遇到什么样的问题。
软件测试概要

第一章:软件测试概述①软件缺陷定义:(1)软件未达到产品说明书中已经标明的功能;(2)软件出现了产品说明书中指明不会出现的错误;(3)软件未达到产品说明书中虽未指出但应当达到的目标;(4)软件功能超出了产品说明书中指明的范围;(5)软件测试人员认为软件难以理解、不易使用,或者最终用户认为该软件使用效果不良。
②软件缺陷的特征:•“看不到”——软件的特殊性决定了缺陷不易看到•“看到但是抓不到”——发现了缺陷,但不易找到问题发生的原因所在③软件缺陷产生原因:(1)软件产品说明书(需求)——56%(不专业—专业~~信息传递)(2)设计——27%(设计不规范)(3)编写代码——7%(4)其他——10%(软、硬件设备之间的配备问题)④软件测试发展历程:早期―→测试1957年―→为了确信自己的产品20世纪70年代―→Glenford Myers 《软件测试艺术》——“测试是为发现错误而执行一个程序或系统的过程”20世纪80年代早期―→软件质量、Bill Hetzel 《软件测试完全指南》——“测试是以评价一个程序或者系统属性为目标的任何一种活动。
测试是对软件质量的度量”20世纪90年代―→测试工具盛行2002年―→Rick和Stefan《系统的软件测试》——“测试是为了度量和提高被测软件的质量,对测试件进行工程设计、实施和维护的整个生命周期过程”⑤今天的软件测试面临的挑战:•软件在国防现代化、社会信息化和国民经济信息化中的作用越来越重要,由此产生的测试任务越来越繁重•软件规模越来越大,功能越来越复杂,如何进行充分而有效的测试成为难题•面向对象的开发技术越来越普及,但是面向对象的测试技术却刚刚起步•对于分布式系统整体性能还不能进行很好的测试•对于实时系统来说,缺乏有效的测试手段•随着安全问题的日益突出,信息系统的安全性如何进行有效的测试与评估,成为世界性难题⑥软件开发与软件测试的关系:•测试与开发各阶段的关系项目规划阶段,需求分析阶段,详细设计和概要设计阶段,编码阶段,测试阶段(软件开发生命周期)•测试与开发的并行性⑦软件测试的发展趋势:•测试工作将进一步前移。
02软件测试方法1

4
第2章 软件测试方法 章
2.1软件测试与软件开发的关系 2.1软件测试与软件开发的关系
2.1.2迭代模型 迭代模型
5
第2章 软件测试方法 章
2.1软件测试与软件开发的关系 2.1软件测试与软件开发的关系
优点( 电通智能电网门户项目例子 电通智能电网门户项目例子) 优点(E电通智能电网门户项目例子):
18系 2.1软件测试与软件开发的关系
2.1.4RUP
优点:
提高了团队生产力,在迭代的开发过程、需求管理、基于组件的体系 结构、可视化软件建模、验证软件质量及控制软件变更等方面,针对所 有关键的开发活动为每个开发成员提供了必要的准则、模板和工具指导, 并确保全体成员共享相同的知识基础。
20
第2章 软件测试方法 章
2.2软件测试与质量的关系 2.2软件测试与质量的关系
软件测试(第2版 慕课版)课后习题答案

第一章软件测试基础课后习题答案1.什么是软件测试?软件测试发现一个应用从开始到结束时的错误,测试是一个过程。
(Glenford J.Myers 提出对软件测试的定义)测试是发现错误而执行的一个程序或系统的过程测试以发现故障为目的,是为了发现故障而执行程序过程2.软件测试涉及哪几个关键问题?软件测试的经济性原则谁来测试(who)测试什么(what)什么时候测试(when)怎样进行测试(how)测试的停止标准是什么(which)3.为什么说软件需求说明是软件故障的最大来源?软件需求是描述了系统有哪些功能,功能操作,性能如何等问题,是开发阶段的重要文档,也是后期软件开发的重要依据。
如果软件需求一开始就错了,在后面处理过程则会把错误放大,这样使得修复起来成本就是提升。
4.简述软件测试的复杂性和经济性。
复杂性1.完全测试是不现实的2.软件测试是有风险的3.杀虫剂现象4.缺陷的不确定性经济性软件测试是软件生命期中费用消耗最大的环节。
测试费用除了测试的直接消耗外,还包括其他的相关费用5.分析最近发生的软件质量事故,并简要分析产生的原因。
具体案例具体分子6.启动Windows计算器,输入“6,000-6=”(逗号不能少),观察计算结果,这是软件故障吗?为什么?这是软件故障中的界面缺陷。
由于无法输入逗号,无法进行输入,当做一个界面缺陷,因为不符合需求,原本是小数点变成了逗号。
7.软件测试应遵循哪些重要的原则或方针?1.完全测试程序是不可能的2.软件测试是有风险的3.测试无法找到隐藏的软件故障4.存在的故障数量与发现的故障数量成正比5.杀虫剂现象6.并非所有软件故障都能修复7.一般不要丢弃测试用例8.应避免测试自己编写的程序9.软件测试是一项复杂且具有创造性的和需要高度智慧的挑战性任务8.假定无法完全测试某一程序,那么在决定是否应该停止测试时应考虑哪些问题?在工作中,常用的停止测试标准有五类:测试超过了预定时间,停止测试执行了所有测试用例但没有发现故障,停止测试使用特定的测试用例方法作为判断测试停止的基础正面指出测试完成要求,如发现并修改70个软件故障根据单位是见查出故障数量决定是否停止测试9 . 假如星期一测试软件的某一功能时,每小时能发现一个新的软件故障,那么星期二会以什么频率发现软件故障?第一感觉就是与第一天(星期一)的一样,既然前一天发现的频率以每小时都有新的故障,说明软件的缺陷很高,所以第二天也可能有同样的频率。
软件测试 第2章软件测试过程模型及标准

第2章软件测试过程模型及标准第一节回顾1.软件过程模型:软件开发全部过程、活动和任务的结构框架也称软件开发模型或软件生存周期模型2.典型的软件过程模型:瀑布模型,演化模型,增量模型,原型模型,螺旋模型,喷泉模型,基于构件的开发模型,形式方法模型3.瀑布模型(包含计算机系统工程)(如图所示)将软件放在计算机系统工程中,考察软件在计算机系统扮演什么角色,软件做什么,区分哪些事情由硬件完成,哪些事情软件完成,哪些事情由人完成。
4.瀑布模型(不包含计算机系统工程)(如图所示)第二节软件测试过程模型1.模型:描述软件测试全部过程、活动和任务的结构框架2.典型的软件测试模型:2.1V模型2.2W模型2.3H模型2.4TMap模型第三节V模型1.V模型描述软件开发各阶段与软件测试类别的关系2.V模型的左分支展示了软件开发的活动(和传统瀑布模型的开发步骤相一致),右分支展示了软件测试的类别特点:3.可根据V模型确定各软件测试阶段的测试要求4.可针对开发活动的不同特点为不同的测试类别设计不同的测试用例5.体现测试人员参与开发的全过程6.V模型(含计算机系统工程)(如图所示)7.V模型(不含计算机系统工程)(如图所示)8.V模型右侧的测试级别随软件开发程度的加深而对应不同级别的测试阶段a)单元测试:主要针对详细设计和编码的测试b)集成测试:主要针对概要设计的测试c)系统测试:主要针对软件系统或计算机系统的测试d)验收测试:主要由用户进行的测试缺点:V模型把测试过程作为在需求定义、需求分析、系统概要设计、系统详细设计及编码之后的一个阶段。
容易使人理解为测试是软件开发的最后阶段,测试主要针对程序进行,而需求定义、需求分析、系统概要设计、详细设计阶段隐藏的问题一直到后期的系统测试和验收测试才被发现。
第四节W模型1.V模型中增加各开发阶段应同步进行的验证和确认活动,演化成W模型2.W模型由两个V组成,一个V代表开发过程,另一个V代表测试过程优点:3.体现了尽早地、不断地进行软件测试4.体现了测试对象不仅是程序代码,还包括需求分析、设计等阶段的工作产品,测试与开发同步进行。
第四章黑盒测试

第1章一、判断分析题1.软件测试的目的是尽可能多的找出软件的缺陷。
()2.软件测试的目的是证明软件没有错误。
()3.测试组负责软件质量。
( )4.程序的效率与程序的复杂性相关。
( )5.软件是一种逻辑实体,而不是具体的物理实体,因而它具有抽象性。
( )6.测试程序仅仅按预期方式运行就行了。
( )7.好的测试员不懈追求完美。
( )8.不存在质量很高但可靠性很差的产品。
( )9.测试组负责软件质量。
( )10.测试是为了验证该软件已正确地实现了用户的要求。
( )11.发现错误多的程序模块,残留在模块中的错误也多。
( )12.程序效率的提高主要应通过选择高效的算法来实现。
( )13.测试人员要坚持原则,缺陷未修复完坚决不予通过。
()14.项目立项前测试人员不需要提交任何工件。
()15.缺陷跟踪系统只针对对测试人员来使用。
( )16.从用户软件开发者的角度出发,普遍希望通过软件测试暴露软件中隐藏的错误和缺陷,以考虑是否可接受该产品。
( )17.软件项目在进入需求分析阶段,测试人员应该开始介入其中。
( )18.测试是提高产品质量根本手段。
()19.项目立项前测试人员不需要提交任何工件。
()20.测试人员要坚持原则,缺陷未修复完坚决不予通过。
()21.代码评审员一般由测试员担任。
()22.代码评审是检查源代码是否达到模块设计的要求。
()二、简答题1.什么是软件测试?软件测试的目的和作用是什么?2.简述软件测试的目的和原则。
3.软件缺陷产生的原因?4.在软件工程或软件测试中,哪些软件问题被称为软件缺陷?5.软件的缺陷等级应如何划分?6.针对缺陷采取怎样的管理措施?7.在测试实施之前,如何才能确定好的测试策略和测试方法?8.什么是软件测试,以及软件测试的意义?9.什么是软件测试?什么是测试用例,测试用例必须包括那几部分?10.简述静态测试和动态测试的区别?11.分析软件测试的复杂性。
12.简述你对测试工作的认识过程、在以后的工作的一些建议。
软件测试与软件开发的关系

软件测试与软件开发的关系软件测试和软件开发是软件开发生命周期中密切相关的两个过程。
软件测试是指对软件产品进行评估、验证和验证的过程,以确定其符合预期的功能和质量要求。
软件开发是指从需求分析、设计、编码到测试的整个过程,旨在创建高质量的软件产品。
软件测试和软件开发之间存在着紧密的合作与互动关系。
它们共同推动着软件开发的进程,并确保最终的软件产品质量。
以下是软件测试与软件开发之间关系的几个方面。
软件测试是软件开发中不可或缺的一部分。
在软件开发过程中,测试是从软件需求分析开始的,并在整个开发周期内持续进行。
通过在每个开发阶段进行测试,可以及早发现并解决潜在的问题,减少后期修复的成本。
测试人员与开发人员合作,确保软件开发过程按照规定的质量标准进行。
测试人员从不同的角度和使用场景对软件进行测试,以验证软件是否达到预期的目标。
软件测试帮助开发人员提高软件质量。
软件测试是为了发现软件中的缺陷和问题,以改进软件的质量。
软件测试人员与开发人员紧密合作,共同努力解决软件中的问题,并提供改进建议。
通过测试,开发人员可以了解软件在不同环境和场景下的表现,并根据测试结果进行优化和改进。
测试还可以帮助开发人员提高代码质量和设计能力,同时加强软件的稳定性和可靠性。
第三,软件开发和测试共同推动软件质量的提高。
软件开发人员和测试人员的合作可以确保软件产品更加稳定和可靠。
开发人员通过与测试人员的沟通,了解用户需求和期望,以及软件开发过程中存在的问题。
测试人员则通过测试验证软件是否符合用户需求,并提供反馈意见。
这种合作有助于减少软件产品中的缺陷和问题,并提高软件产品的质量和用户满意度。
软件测试和软件开发是相互依赖的。
测试人员需要开发人员提供可测试的软件版本,以进行测试。
开发人员也需要测试人员提供准确的测试结果和反馈,以改进软件的质量。
测试人员和开发人员之间的有效沟通和协作是成功的软件开发过程的关键。
他们需要共同理解软件产品的需求和目标,并共同努力达到这些目标。
简述软件测试的基本流程。

简述软件测试的基本流程。
软件测试是确保软件产品质量的至关重要的一环。
在软件开发过程中,测试人员与开发人员紧密合作,以确保交付的产品能够满足用户需求和预期。
本文将介绍软件测试的基本流程,以帮助读者更好地了解测试工作内容。
一、引言1.软件测试的重要性在软件开发过程中,测试阶段是发现和修复问题的重要环节。
高质量的软件测试可以降低软件上线后出现问题的风险,节省后期维护成本,提高用户满意度。
2.测试与开发的关系测试与开发是相辅相成的两个环节。
开发人员负责编写代码,实现产品功能;测试人员则负责验证产品是否符合预期,找出潜在问题。
双方需密切合作,确保产品高质量交付。
二、软件测试基本流程1.测试计划测试计划是软件测试的第一个阶段,主要目的是明确测试目标、范围、资源等。
测试计划应包括以下内容:- 测试目标:明确本次测试的目的和预期成果。
- 测试范围:确定本次测试需覆盖的功能模块、业务场景等。
- 测试计划:编制详细的测试计划,包括测试阶段、任务分配、时间安排等。
- 测试资源:分配测试环境、测试工具、测试设备等资源。
2.测试设计测试设计阶段主要任务是编写测试用例。
测试用例应包括以下内容:- 测试用例编号:唯一标识一个测试用例。
- 测试用例描述:简述测试场景和预期结果。
- 测试步骤:详细描述测试操作流程。
- 预期结果:描述测试完成后应达到的目标。
3.测试执行测试执行阶段根据测试计划和测试用例进行实际操作。
此阶段可采用手工测试和自动化测试两种方式。
- 手工测试:测试人员按照测试用例逐一执行测试操作。
- 自动化测试:利用测试工具或脚本自动执行测试用例。
4.测试报告测试报告是对测试过程和结果的总结。
主要包括以下内容:- 测试概述:介绍测试目的、范围、时间等信息。
- 测试执行情况:汇总测试执行结果,包括通过、失败、跳过等。
- 缺陷报告:列出本次测试发现的缺陷,并提供详细描述。
- 测试总结:总结本次测试的经验教训,提出改进措施。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
时机: 时机:
每次错误修改之后,或者版本更新之后 每次错误修改之后,或者版本更新之后 版本更新
方法: 方法:
白盒测试 黑盒 白盒测试/黑盒测试 测试 黑盒测试
责任: 责任:
开发工程师 开发工程师 测试工程师 测试工程师
测试过程测试过程 缺陷跟踪
缺陷跟踪: 缺陷跟踪:Defect Tracing
目标: 目标:
时机: 时机:
多数集成测试完成后
方法: 方法:
黑盒测试
责任: 责任:
测试工程师
测试过程-稳定期测试 测试过程 稳定期测试
系统测试: 系统测试:System Testing
稳定期测试
目标: 目标:
度量是否可以结束测试 度量是否可以结束测试
时机: 时机:
传统的系统测试完成后
方法: 方法:
黑盒测试 黑盒测试
确保所有发现的错误被正确记录、分发、评估、关闭、 确保所有发现的错误被正确记录、分发、评估、关闭、统 所有发现的错误被正确记录 计
时机: 时机:
从错误发现开始到错误关闭为止, 从错误发现开始到错误关闭为止,每次错误状态修改之后
方法: 方法:
缺陷跟踪系统
责任: 责任:
开发工程师 开发工程师 测试工程师 测试经理 用户
软件测试的三个阶段
初测阶段 细测阶段 回归测试阶段 在集成测试的功能冻结和代码冻结 期间主要是进行回归测试。 期间主要是进行回归测试。
单元测试: 单元测试:Unit Testing
目标: 目标:
检验程序最小单元有无错误 检验程序最小单元有无错误
接口、数据结构、边界、覆盖、 接口、数据结构、边界、覆盖、逻辑
责任: 责任:
测试工程师
测试过程测试过程 验收测试
验收测试:Acceptance Testing 验收测试:
目标: 目标:
使客户验收签字 系统是否符合事先约定的验收标准 系统是否符合事先约定的验收标准
时机: 时机:
系统测试完成后,在项目组看来开发和测试工作已经全 系统测试完成后,在项目组看来开发和测试工作已经全 部完成,可以交付 交付使用 部完成,可以交付使用
测试过程-系统测试 测试过程 系统测试
系统测试: 系统测试:System Testing
目标: 目标:
检验组成整个系统的代码、以及系统的软硬件配合有无错 检验组成整个系统的代码、以及系统的软硬件配合有无错 整个系统的代码 系统 误 代码实现的系统与用户需求 系统与用户需求是否吻合 代码实现的系统与用户需求是否吻合 检验系统的文档等各种是否完整 系统的文档等各种是否完整、 检验系统的文档等各种是否完整、有效 模拟验收测试的要求,检查系统是否符合用户的验收标准 模拟验收测试的要求,检查系统是否符合用户的验收标准
第二章 软件测试与软件开 发过程的关系及测试过程
2.1 软件产品组成
1.软件产品需要各种开发投入 软件产品需要各种开发投入 2.客户需求 客户需求 3.产品说明 产品说明 4.设计文档 设计文档 5.测试文档 测试文档 6.开发进度 开发进度 7.软件产品的其他组成部分 软件产品的其他组成部分
2.2 软件开发项目组
检验单元编码与设计是否吻合 检验单元编码与设计是否吻合
时机: 时机:
编码完成后, 编码完成后,首先要实施的测试
方法: 方法:
静态测试 静态测试 白盒测试 白盒测试
责任: 责任:
开发工程师
测试过程-集成测试 测试过程 集成测试
集成测试: 集成测试:Integration Testing
目标: 目标:
图2-2 螺旋过程模型
2.3.3 增量过程模型
有些时候可能会用一种几乎连续的过 程小幅度地推进项目,这就是增量过程 程小幅度地推进项目, 模型,如图 所示 所示。 模型,如图2-3所示。
增量 分析 设计 编码 测试 增量 1 交付客户 测试 增量 2 交付客户 测试 增量 3 交付客户
分析
设 计
图2-1 瀑布过程模型
2.3.2 螺旋过程模型
螺旋过程模型的基本思路是, 螺旋过程模型的基本思路是 , 依据 前一个版本的结果 构造新的版本 前一个版本 的结果构造新的版本 , 的结果 构造新的版本, 这个不断重复迭代 的过程形成了一 这个 不断重复迭代的过程形成了一 不断重复迭代 个螺旋上升的路径,如图 所示 所示。 个螺旋上升的路径,如图2-2所示。
检验组成系统的模块接口有无错误 检验组成系统的模块接口有无错误 模块 代码实现的系统 系统设计与需求定义是否吻合 代码实现的系统设计与需求定义是否吻合
时机: 时机:
主要的单元测试完成后, 主要的单元测试完成后,经常与单元测试同步进行
方法: 方法:
黑盒测试 黑盒测试
责任: 责任:
开发工程师 测试工程师
编码
分析
设计
编码
……
分析 设计 编码 测试 增量 n 交付客户 日历时间
图2-3 增量过程模型
2.4 软件测试与软件开发过程的关系
对于软件测试与软件开发过程之间的关 套用固定的模型不是聪明之举。 系 , 套用固定的模型不是聪明之举 。 比如 程序设计” 测试”之间的关系, “程序设计”与“测试”之间的关系,习惯 上总以为程序设计在先,测试在后, 上总以为程序设计在先,测试在后,如下图 ( a) 所示 。 而对于一些复杂的程序 , 将测 ) 所示。 而对于一些复杂的程序, 试分为同步测试与总测试更有效, 试分为同步测试与总测试更有效 , 如下图 (b)所示。 )所示。
方法: 方法:
黑盒测试 黑盒测试
责任: 责任:
产品经理或其他高级经理 开发工程师 测试工程师 用户
测试过程测试过程 回归测试
回归测试: 回归测试:Regression Testing
目标: 目标:
验证程序修改或者版本更新以后, 验证程序修改或者版本更新以后,以前正确的功能和其 修改或者版本更新以后 他指标仍旧正确。 他指标仍旧正确。
大爆炸式开发模式(SKIP) 大爆炸式开发模式 边写边改模式(SKIP) 边写边改模式 瀑布过程模型 螺旋过程模型 增量过程模型 极限编程( ) 极限编程(XP) (SKIP)等 等
2.3.1 瀑布过程模型
瀑布过程模型反映了人们早期 对软 瀑布过程模型反映了人们 早期对软 早期 件工程的认识水平, 是人们所熟悉的一 件工程的认识水平 , 是人们所 熟悉的一 种线性思维的体现 的体现。 种线性思维的体现。 瀑布过程模型强调阶段的划分 阶段的划分及其 瀑布过程模型强调阶段的划分及其 顺序性、各阶段工作及其文档的完备性 完备性, 顺序性、各阶段工作及其文档的完备性, 是一种严格线性的 按阶段顺序的、 严格线性的、 是一种严格线性的、按阶段顺序的、逐 步细化的开发模式 如图2-1所示 的开发模式, 所示。 步细化的开发模式,如图 所示。
软件项目经理 系统设计师 程序员 软件测试员/测试师 软件测试员 测试师 技术制作、用户助手、用户培训员、 技术制作、用户助手、用户培训员、手册 编写和文件档案专员 结构管理和制作人员
2.3 软件过程模型
软件开发过程中存在各种复杂因素 , 软件开发过程中存在各种 复杂因素, 为 复杂因素 了解决由此而带来的种种问题, 了解决由此而带来的种种问题,软件开发 经过多年的摸索, 多种实现软 者们经过多年的摸索 给出了多种 者们经过多年的摸索,给出了多种实现软 件工程的方式——软件过程模型。 件工程的方式 软件过程模型。 软件过程模型
程序设计 程序设计 测 试 同步测试 总测试
(a)程序设计在先测试在后
(b)测试分为同步测试与总测试
程序设计与测试的关系
现在还有一种全新的软件开发模式—— 现在还有一种全新的软件开发模式 测试驱动软件开发思想 以测试驱动软件开发思想 软件测试是贯穿于软件开发过程的 于软件开发过程的。 软件测试是贯穿于软件开发过程的。 软件生存周期的各个阶段 各个阶段中都少不了相 软件生存周期的 各个阶段 中都少不了相 应的测试, 应的测试 , 软件生存周期各个阶段的测 试分别对应于软件测试过程中的单元测 集成测试、 系统测试和确认测试, 试 、 集成测试 、 系统测试和确认测试 , 如下图所示。 如下图所示 。 这种对应关系有利于软件 开发过程的管理和软件质量的控制。 开发过程的管理和软件质量的控制。
Hale Waihona Puke 需求分析软件设计编
码
确认测试
集成测试
单元测试
需求分 析说明 书
概要设 计说明 书
详细设 计说明 书
源程序 代码
单元测 试
集成测 试
确认测 试
软件测试与软件开发的关系
2.5 软件开发对应的测试过程
用户需求 规格定义 设计 编码 配置管理 验收测试 系统测试 集成测试 单元测试 缺陷跟踪
回 归 测 试