软件测试基本概念.pptx

上传人:莉*** 文档编号:80099199 上传时间:2023-03-22 格式:PPTX 页数:56 大小:300.58KB
返回 下载 相关 举报
软件测试基本概念.pptx_第1页
第1页 / 共56页
软件测试基本概念.pptx_第2页
第2页 / 共56页
点击查看更多>>
资源描述

《软件测试基本概念.pptx》由会员分享,可在线阅读,更多相关《软件测试基本概念.pptx(56页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业相关知识介绍相关知识介绍 比如,如果要我们开发一个比如,如果要我们开发一个“学校信息管理学校信息管理系统系统”,把学校主要的工作都纳入这个系统中,把学校主要的工作都纳入这个系统中来,我们要怎么做呢?来,我们要怎么做呢?提到软件测试,必然要关系到软件开发,提到软件测试,必然要关系到软件开发,大家想一下,软件是怎样开发出来的?大家想一下,软件是怎样开发出来的?谁告诉我们如何解决如此纷繁复杂的问题呢?谁告诉我们如何解决如此纷繁复杂的问题呢?软件工程软件工程第1页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学

2、院软件工程专业相关知识介绍相关知识介绍 比如,开发一个比如,开发一个“学校信息管理系统学校信息管理系统”。我们首先要知道一个软件开发要经历的步骤:我们首先要知道一个软件开发要经历的步骤:1.可行性研究并立项(签订合同)。可行性研究并立项(签订合同)。2.制定项目启动计划,选择项目管理过程。制定项目启动计划,选择项目管理过程。3.根据选定的过程,建立团队,可能包括:开发小根据选定的过程,建立团队,可能包括:开发小组、测试小组、项目经理、组、测试小组、项目经理、QA等。等。4.获取粗略的需求,根据获取的需求分出一级的功获取粗略的需求,根据获取的需求分出一级的功能模块,比如:财务管理、教务管理、各职

3、能部能模块,比如:财务管理、教务管理、各职能部门的主要业务、后勤、图书馆等等。门的主要业务、后勤、图书馆等等。第3页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业相关知识介绍相关知识介绍 5.根据需求分析选定开发方法、开发工具和根据需求分析选定开发方法、开发工具和软硬件及网络环境。比如:开发模型、软件体软硬件及网络环境。比如:开发模型、软件体系结构、开发工具、数据库、卡和读卡器、网系结构、开发工具、数据库、卡和读卡器、网络、客户端机器配置和服务器配置等。络、客户端机器配置和服务器配置等。6.平行的,测试小组开始着手制定平行的,测试小组开始着手制定测试测试计划

4、计划,并提交并提交QA确认。确认。7.从开发和测试小组中选定人员在第一现场从开发和测试小组中选定人员在第一现场获取详细的需求。获取详细的需求。第4页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业相关知识介绍相关知识介绍 8.需求分析说明书初稿需求分析说明书初稿出来后,开发小出来后,开发小组要在一起进行讨论,主要讨论以下几方面内组要在一起进行讨论,主要讨论以下几方面内容:容:l需求充分否,有没有不合理和有异议的地方;需求充分否,有没有不合理和有异议的地方;l各个不同功能之间需求上有没有冲突;各个不同功能之间需求上有没有冲突;l需求是否可实现;需求是否可实现;l

5、各模块之间如何衔接(接口部分的处理);各模块之间如何衔接(接口部分的处理);经过反复的讨论和修订,最终形成正式的经过反复的讨论和修订,最终形成正式的需求分析说明书。并交付给项目经理和需求分析说明书。并交付给项目经理和QA。第5页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业相关知识介绍相关知识介绍 9.项目经理和项目经理和QA根据相关标准,比如:根据相关标准,比如:ISO或或CMMI等的相关内容,对需求分析说明书进等的相关内容,对需求分析说明书进行验证和确认,如果通过则形成基线(里程碑)行验证和确认,如果通过则形成基线(里程碑),并把它作为配置项纳入配置管理

6、系统。,并把它作为配置项纳入配置管理系统。10.测试小组一旦发现配置项,就检出该配测试小组一旦发现配置项,就检出该配置项,并根据置项,并根据需求分析说明书需求分析说明书编写编写测试测试需求需求。第6页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业相关知识介绍相关知识介绍 11.测试需求分析测试需求分析完成后也要提交项目经完成后也要提交项目经理和理和QA,他们根据相关标准,对其进行验证,他们根据相关标准,对其进行验证和确认,如果通过则形成基线(里程碑),并和确认,如果通过则形成基线(里程碑),并把它作为配置项纳入配置管理系统。把它作为配置项纳入配置管理系统。1

7、2.然后是开发人员进行概要设计和详细设然后是开发人员进行概要设计和详细设计,设计相关的数据结构,各种类和接口。计,设计相关的数据结构,各种类和接口。测试人员写测试人员写测试分析测试分析主要是确定测试业务、主要是确定测试业务、选择测试策略、测试方法和采用的测试工具等。选择测试策略、测试方法和采用的测试工具等。第7页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业相关知识介绍相关知识介绍 13.开发人员把设计报告提交项目经理和开发人员把设计报告提交项目经理和QA提交相应的项目经理和提交相应的项目经理和QA。14.项目经理根据相关标准,对他们进行验证和确认,如果通过

8、则形成基项目经理根据相关标准,对他们进行验证和确认,如果通过则形成基线(里程碑),并把它作为配置项纳入配置管理系统。线(里程碑),并把它作为配置项纳入配置管理系统。第8页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业相关知识介绍相关知识介绍 15.然后是开发人员进入编码阶段、测试人员开始然后是开发人员进入编码阶段、测试人员开始写测试用例,并等待写测试用例,并等待build移交,测试人员发现完整移交,测试人员发现完整的的build后就可以进行相关的单元测试和集成测试,后就可以进行相关的单元测试和集成测试,并检出问题,问题报告要提交项目经理和相关开发人并检出问题

9、,问题报告要提交项目经理和相关开发人员进行确认,确认后提交配置项入配置管理系统。员进行确认,确认后提交配置项入配置管理系统。16.整体开发完成后,还要进行系统测试,主要测整体开发完成后,还要进行系统测试,主要测试系统的整体功能实现情况、还有系统的性能。试系统的整体功能实现情况、还有系统的性能。17.最后是用户和第三方参与的验收测试,用户最后是用户和第三方参与的验收测试,用户测试、第三方测试等。测试、第三方测试等。第9页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业相关知识介绍相关知识介绍 最终通过的系统就可以交付用户了。最终通过的系统就可以交付用户了。通过以

10、上讲述,大家可以看到,我们的软件开发和通过以上讲述,大家可以看到,我们的软件开发和软件测试是并行的两个过程,当然,他们之间也会发软件测试是并行的两个过程,当然,他们之间也会发生交互,当某个相对独立的生交互,当某个相对独立的build完成后,就可以针完成后,就可以针对该对该build进行测试。可以说,开发和测试两者共同进行测试。可以说,开发和测试两者共同保证了软件最终可以顺利完成,从而保证了软件的质保证了软件最终可以顺利完成,从而保证了软件的质量。当然,前提是他们是量。当然,前提是他们是按照质量标准执行的一个可按照质量标准执行的一个可控过程控过程。第10页/共56页22 三月 2023山东建筑大

11、学计算机科学与技术学院软件工程专业软软 件件 测测 试试 技技 术术 课课 程程第二篇第二篇 软件测试概述软件测试概述第11页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业软件测试概述(一)(一)软件质量管理软件质量管理(二)软件测试基础(二)软件测试基础(三)软件测试过程模型(三)软件测试过程模型(四)软件测试生命周期(四)软件测试生命周期第12页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业软件测试的历史及演变软件测试的历史及演变早期软件测试等同于“调试”。软件测试投入很少,介入时间晚。1957年软件测试逐步区别与“调

12、试”,开始作为一种发现软件缺陷的活动。软件测试仍存在介入时间晚的问题。缺乏有效的测试方法。20世纪70年代提出了“在软件生命周期的开始阶段就根据需求制订测试计划”的建议。软件测试逐步从软件初期即开始介入。第13页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业软件测试的历史及演变软件测试的历史及演变20世纪80年代早期软件测试不仅是一个发现错误的过程,也成为软件质量保证的主要职能,包含软件质量评价的内容。软件开发人员和测试人员开始一起探讨软件工程和测试问题。软件测试与整个开发流程融合成一体。20世纪90年代软件测试工具开始出现并逐渐盛行。软件测试的自动化程度及

13、效率得到了提高。近20年软件测试专家总结了测试模型;涌现出大量优秀的测试工具。软件测试技术研究取得了很大的突破。提高软件测试的自动化程度及效率。第14页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业软件测试现状软件测试现状近几年软件测试取得了较大的发展,但仍落后于软件开发的发展水平,近几年软件测试取得了较大的发展,但仍落后于软件开发的发展水平,使得软件测试面临着很大的挑战,主要表现为以下几个方面:使得软件测试面临着很大的挑战,主要表现为以下几个方面:l软件测试人才缺乏。软件测试人才缺乏。我国软件产业已经获得了长足的进步,但测我国软件产业已经获得了长足的进步,

14、但测试人才缺乏,很大程度上制约了软件产业的发展,试人才缺乏,很大程度上制约了软件产业的发展,因此加紧建立和健全软件测试人才培养体系成为当因此加紧建立和健全软件测试人才培养体系成为当务之急。务之急。第15页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业软件测试现状软件测试现状l软件测试理论不成熟。软件测试理论不成熟。软件测试行业的兴起将有很大程度取决于测试理软件测试行业的兴起将有很大程度取决于测试理论的成熟度,目前,软件测试过程中还存在一些问题论的成熟度,目前,软件测试过程中还存在一些问题没有定论或没有明确的定论,如:软件测试的终止标没有定论或没有明确的定论,

15、如:软件测试的终止标准、如何评价测试价值等。准、如何评价测试价值等。l软件测试技术有待提高。软件测试技术有待提高。目前,国内软件测试技术比较落后,手工测试比目前,国内软件测试技术比较落后,手工测试比重较大,自动化的性能测试、白盒测试、代码测试、重较大,自动化的性能测试、白盒测试、代码测试、安全测试等都处于初级阶段,软件测试的质量、进度、安全测试等都处于初级阶段,软件测试的质量、进度、成本和风险都未得到有效的保证和控制。成本和风险都未得到有效的保证和控制。第16页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业什么是软件测试?什么是软件测试?早期早期早期定义定义

16、定义在在1979年出版的一本经典著作年出版的一本经典著作软件测试艺软件测试艺术术中,曾经对软件测试做出如下的定义:中,曾经对软件测试做出如下的定义:软件测试就是为了发现错误而执行程序或系软件测试就是为了发现错误而执行程序或系统的过程统的过程。这是软件测试的早期定义,它认。这是软件测试的早期定义,它认为软件测试的目的包括一下几点:为软件测试的目的包括一下几点:第17页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业什么是软件测试?什么是软件测试?早期早期早期定义定义定义1.测试是执行程序的过程,目的在于发现测试是执行程序的过程,目的在于发现错误。错误。2.测试是

17、为了证明程序有错误,而不是为测试是为了证明程序有错误,而不是为了证明程序无错误。了证明程序无错误。3.一个好的测试用例在于能发现至今未发一个好的测试用例在于能发现至今未发现的错误。现的错误。4.一个成功的测试是发现了至今未发现的一个成功的测试是发现了至今未发现的错误的测试。错误的测试。第18页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业什么是软件测试?什么是软件测试?早期早期早期定义定义定义该定义存在的不完善之处该定义存在的不完善之处:l测试文档属于软件测试,但是它不一定需测试文档属于软件测试,但是它不一定需要运行程序。要运行程序。l我按照用户的需求测试了

18、实际的系统,却我按照用户的需求测试了实际的系统,却一个一个Bug也没发现,我所做的测试工作有意也没发现,我所做的测试工作有意义吗?义吗?当然有意义,因为我至少证明了该系统基当然有意义,因为我至少证明了该系统基本符合用户的需求。本符合用户的需求。第19页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业什么是软件测试?什么是软件测试?其实上面的定义是把软件测试的目的和手其实上面的定义是把软件测试的目的和手段搞混了,发现错误仅仅是软件测试的手段而段搞混了,发现错误仅仅是软件测试的手段而已,是副产品,软件测试的最终目的是已,是副产品,软件测试的最终目的是检验实检验实际

19、的软件系统是否符合用户的需求,而不是为际的软件系统是否符合用户的需求,而不是为了发现错误了发现错误。当然,这个定义放在当时的环境。当然,这个定义放在当时的环境下是说得通的,因为那时的用户需求、质量保下是说得通的,因为那时的用户需求、质量保障等概念比较模糊,测试仅仅是编码的最后阶障等概念比较模糊,测试仅仅是编码的最后阶段。段。第20页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业什么是软件测试?什么是软件测试?标准标准标准定义定义定义 软件测试不仅仅是发现错误的过程,软件测试不仅仅是发现错误的过程,测试软件是测试软件是在可控的预置条件下操作软件在可控的预置条件

20、下操作软件的过程的过程,其目的是通过发现错误,其目的是通过发现错误弄清预期弄清预期结果与实际结果之间的差别结果与实际结果之间的差别并并确认软件行确认软件行为是否符合产品规格说明为是否符合产品规格说明同时同时验证软件是验证软件是否符合用户的需求否符合用户的需求。第21页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业什么是软件测试?什么是软件测试?标准标准标准定义定义定义该定义说明了以下几点该定义说明了以下几点:l它指出了软件测试是操作软件的过程,这它指出了软件测试是操作软件的过程,这里并没有用运行系统这个字眼,可见测试软里并没有用运行系统这个字眼,可见测试软件

21、并不一定需要运行系统。件并不一定需要运行系统。l它指出了软件测试的一个目标是检验预期它指出了软件测试的一个目标是检验预期结果和实际结果之间的差别,手段就是发现结果和实际结果之间的差别,手段就是发现错误。错误。第22页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业什么是软件测试?什么是软件测试?标准标准标准定义定义定义l它指出了软件测试的另一个目标是确认它指出了软件测试的另一个目标是确认软件行为是否符合产品规格说明同时验证软件行为是否符合产品规格说明同时验证软件是否符合用户的需求。同时给出这两软件是否符合用户的需求。同时给出这两点充分说明了点充分说明了产品规格

22、说明产品规格说明用户的需求。用户的需求。第23页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业什么是软件测试?什么是软件测试?我们给出软件测试最终目的:我们给出软件测试最终目的:l以最少的人力、物力、时间找出软件中潜在的各种错以最少的人力、物力、时间找出软件中潜在的各种错误和缺陷。误和缺陷。l通过分析测试过程中发现的问题可以帮助发现当前开通过分析测试过程中发现的问题可以帮助发现当前开发工作所采用的软件过程的缺陷,以便进行软件过程发工作所采用的软件过程的缺陷,以便进行软件过程改进;同时通过测试结果的分析整理,可修正软件开改进;同时通过测试结果的分析整理,可修正

23、软件开发规则,并为软件可靠性分析提供依据。发规则,并为软件可靠性分析提供依据。l评价程序或系统的属性,对软件质量进行度量和评估,评价程序或系统的属性,对软件质量进行度量和评估,以验证软件的质量满足用户的需求,为用户选择、接以验证软件的质量满足用户的需求,为用户选择、接受软件提供有力的依据。受软件提供有力的依据。第24页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业软件测试过程模型软件测试过程模型1.软件测试过程模型概念软件测试过程模型概念2.软件测试软件测试V模型模型3.软件测试软件测试W模型模型3.软件测试软件测试X模型模型4.软件测试前置模型软件测试前置

24、模型5.软件测试软件测试H模型模型6.软件测试模型总结软件测试模型总结第25页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业软件测试过程模型是软件测试的工作框软件测试过程模型是软件测试的工作框架,用于指导软件测试过程,在软件测试过架,用于指导软件测试过程,在软件测试过程中使用合理的测试模型可以降低成本,提程中使用合理的测试模型可以降低成本,提高效率。高效率。常见的软件过程模型包括常见的软件过程模型包括V模型、模型、W模型、模型、X模型、前置测试模型、模型、前置测试模型、H模型等。模型等。三、软件测试过程模型三、软件测试过程模型第26页/共56页2023/3/

25、22 1:32山东建筑大学计算机科学与技术学院软件工程专业V模型最早是由模型最早是由Paul Rook在在20世纪世纪80年代后期提出的,在英国国家计年代后期提出的,在英国国家计算中心文献中发布,目的是缩短软件开发算中心文献中发布,目的是缩短软件开发周期,提高软件开发速度。周期,提高软件开发速度。V模型主要反映了测试活动与分析、模型主要反映了测试活动与分析、设计的关系。设计的关系。用户需求需求分析与系统设计概要设计详细设计编码验收测试系统测试集成测试单元测试软件测试软件测试V模型模型第27页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业V模型清楚地描述了测试

26、与开发各模型清楚地描述了测试与开发各阶段的对应关系。阶段的对应关系。通过通过V模型可以看出,单元测试和模型可以看出,单元测试和集成测试主要验证程序的详细设计及概要集成测试主要验证程序的详细设计及概要设计,检测程序的执行是否满足软件设计设计,检测程序的执行是否满足软件设计要求;要求;用户需求需求分析与系统设计概要设计详细设计编码验收测试系统测试集成测试单元测试软件测试软件测试V模型模型第28页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业系统测试是验证系统设计,检测系系统测试是验证系统设计,检测系统功能、性能是否达到系统设计的指标;统功能、性能是否达到系统设计

27、的指标;验收测试追溯软件需求说明进行测验收测试追溯软件需求说明进行测试,确定软件的实现是否满足用户需求和试,确定软件的实现是否满足用户需求和合同的要求。合同的要求。用户需求需求分析与系统设计概要设计详细设计编码验收测试系统测试集成测试单元测试软件测试软件测试V模型模型第29页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业不足:不足:V模型忽略了测试应该在早期介入,将软件测试过程作为在需求分析、模型忽略了测试应该在早期介入,将软件测试过程作为在需求分析、系统设计及编码之后的一个阶段,忽略了软件测试对需求分析、程序设计验证系统设计及编码之后的一个阶段,忽略了软件

28、测试对需求分析、程序设计验证的意义,导致需求分析及设计阶段中隐藏的问题到后期才能被发现。的意义,导致需求分析及设计阶段中隐藏的问题到后期才能被发现。软件测试软件测试V模型模型第30页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业软件测试软件测试W模型模型第31页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业通过通过W模型可以看出,软件测试是伴随整个开发周期的,模型可以看出,软件测试是伴随整个开发周期的,当相应的开发活动完成,其相应的测试便可以开始执行,当相应的开发活动完成,其相应的测试便可以开始执行,且测试对象包括程序、需

29、求、功能、设计等。相对于且测试对象包括程序、需求、功能、设计等。相对于V模型,模型,W模型更科学,强调了测试与开发是同步进行的,模型更科学,强调了测试与开发是同步进行的,有利于尽早发现问题。有利于尽早发现问题。不足:不足:W模型和模型和V模型都把软件开发视为需求、设计、模型都把软件开发视为需求、设计、编码等一系列的串行活动,同时,开发和测试保持着一编码等一系列的串行活动,同时,开发和测试保持着一种线性的前后关系,只有上一阶段完成后,才可以开始种线性的前后关系,只有上一阶段完成后,才可以开始下一阶段的活动,不能支持迭代、自发性以及变更调整。下一阶段的活动,不能支持迭代、自发性以及变更调整。软件测

30、试软件测试W模型模型第32页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业X模型左边描述的是针对单独程序模型左边描述的是针对单独程序片段所进行的相互分离的编码和测试,此片段所进行的相互分离的编码和测试,此后将进行频繁的交接,通过集成最终合成后将进行频繁的交接,通过集成最终合成为可执行的程序,这一点在图的右上部分为可执行的程序,这一点在图的右上部分得以体现。得以体现。软件测试软件测试X模型模型程序片段1测试设计工具配置执行测试编码完成执行测试工具配置测试设计程序片段n封版执行测试集成1n测试设计工具配置探索性测试执行测试第33页/共56页2023/3/22 1

31、:32山东建筑大学计算机科学与技术学院软件工程专业已通过集成测试的成品可以进行已通过集成测试的成品可以进行封版并提交给用户,也可以作为更大规封版并提交给用户,也可以作为更大规模和范围内集成的一部分。模和范围内集成的一部分。多根并行的曲线表示变更可能在多根并行的曲线表示变更可能在各个部分发生。各个部分发生。软件测试软件测试X模型模型程序片段1测试设计工具配置执行测试编码完成执行测试工具配置测试设计程序片段n封版执行测试集成1n测试设计工具配置探索性测试执行测试第34页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业X模型还定位了探索性测试,这模型还定位了探索性测

32、试,这是不进行事先计划的测试是不进行事先计划的测试.测试人员进行随机测试,这一方测试人员进行随机测试,这一方式往往能帮助有经验的测试人员在测试式往往能帮助有经验的测试人员在测试计划之外发现更多的软件错误。计划之外发现更多的软件错误。软件测试软件测试X模型模型程序片段1测试设计工具配置执行测试编码完成执行测试工具配置测试设计程序片段n封版执行测试集成1n测试设计工具配置探索性测试执行测试第35页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业软件前置测试模型软件前置测试模型第36页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业

33、前置测试模型体现了以下要点:前置测试模型体现了以下要点:1.软件开发和测试相结合。软件开发和测试相结合。2.对每一个交付内容进行测试。对每一个交付内容进行测试。3.指明了测试用例是基于需求的、测试之前指明了测试用例是基于需求的、测试之前定义验收标准。定义验收标准。4.验收测试和技术测试保持相互独立。验收测试和技术测试保持相互独立。软件前置测试模型软件前置测试模型第37页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业 H模型演示了在整个生产周期中某层次上的模型演示了在整个生产周期中某层次上的一次测试一次测试“微循环微循环”,图中,图中“其他流程其他流程”可以可

34、以是任意开发流程,非开发流程,甚至测试流程是任意开发流程,非开发流程,甚至测试流程本身。当某个测试时间点就绪时,软件测试即本身。当某个测试时间点就绪时,软件测试即从测试准备阶段进入测试执行阶段。从测试准备阶段进入测试执行阶段。软件测试软件测试H模型模型测试准备测试执行测试流程其他流程(如设计流程)第38页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业H模型揭示了:模型揭示了:1.软件测试不仅指测试执行,还包括很多其他软件测试不仅指测试执行,还包括很多其他活动。活动。2.软件测试是一个独立的流程,贯穿产品整个软件测试是一个独立的流程,贯穿产品整个生命周期,与其

35、他流程并发地进行。生命周期,与其他流程并发地进行。3.软件测试要尽早准备,尽早执行。软件测试要尽早准备,尽早执行。软件测试软件测试H模型模型第39页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业软件测试模型总结软件测试模型总结测试模型特点V模型V模型强调软件开发过程中需要经历若干个测试级别,并将每个测试级别与开发级别相对应。但该模型把软件测试作为编码完成之后的活动,忽略了需求分析与设计等前期阶段的测试,导致部分错误直到后期才能发现。W模型W模型补充了V模型的不足,强调了软件开发过程与测试过程并行进行。但该模型仍把软件开发视为串行活动,同时,开发和测试保持着线

36、性的前后关系,不能支持迭代、自发性以及变更调整。第40页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业X模型 X模型是对V模型的改进,该模型提出针对单独的程序片段进行相互分离的编码和测试,此后通过频繁的交接,通过集成最终合成为可执行的程序。X模型并不要求对每一个程序片段都进行单元测试,但模型没有提供是否要跳过单元测试的判断准则。前置测试模型前置测试模型结合了V模型W模型的特点,将测试和开发紧密结合,标识了项目生命周期从开始到结束之间的关键行为,要求对每一个交付的内容进行测试。H模型 H模型强调测试是独立的,只要测试准备完成,就可以执行测试,体现了测试流程的完

37、整性。软件测试模型总结软件测试模型总结第41页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业(五)软件测试生命周期编号编号阶段阶段活动活动输出产物输出产物5.1测试计划 创建一个总体的测试计划,对软件测试活动作出整体规划。测试计划、风险评估表、测试策略 5.2测试分析 创建一个更加细致的测试计划,提炼质量需求形成测试需求(功能性)矩阵。重新修订完善的测试计划、测试需求矩阵5.3测试设计 设计完善测试用例,决定哪些用例自动化执行,哪些手工执行。测试用例、测试数据自动化测试脚本编制。测试规程/测试脚本、驱动器第42页/共56页2023/3/22 1:32山东建筑

38、大学计算机科学与技术学院软件工程专业5.4测试执行与回归测试按照测试计划要求执行测试并进行回归测试测试结果、缺陷报告、测试执行概要、测试过程改进计划(选项)5.5测试评估评估测试过程,编写测试报告测试报告,包括:测试日志、测试记录、缺陷报告和测试总结报告。(五)软件测试生命周期第43页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业软件测试计划一般由经验丰富的项目负责人编写,是指导测试过程的纲领性文件,让测试人员明确测试任务及方法,保持测试实施过程的顺畅沟通,跟踪、控制测试进度,同时对开发工作、整个项目规划、项目经理审查等都有辅助性作用。测试计划通常应清晰描述

39、以下内容。项目测试背景:单位情况、应用状况、测试目的等。项目概述:被测项目的性质、类型、体系结构、应用领域、工作环境、主要功能等。测试内容及目标:确定软件测试范围和优先级,制定测试目标。5.1软件测试计划第44页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业 测试策略:制定整体测试策略、所使用的测试技术和方法。资源列表:进行测试所需要的软硬件、测试工具、培训资料及要求、文档、必要的技术资源等。工作安排:测试过程中每个阶段的工作安排,相应的人员及时间安排等。测试标准:测试开始、暂停、重启、完成等标准。风险分析:分析测试过程中可能存在的技术、人员、资源、进度等方

40、面的风险及对策。5.1.软件测试计划第45页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业软件测试需求分析的内容包括:技术架构分析:主要分析软件的系统架构和所采用的实现技术。功能结构分析:主要分析系统包含的功能模块并明确各模块之间的调用关系。部署环境分析:主要分析被测系统的软件、硬件、网络等方面的环境。业务流程分析:主要分析系统应用领域、总体业务流程,说明各个功能模块之间的业务顺序,和各个功能模块之间传递的信息和数据。5.2.软件测试分析第46页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业功能规格分析:主要分析各功能模块

41、中主要输入数据的规格和约束、每个具体功能的处理机制、操作顺序、输出结果。非功能需求分析:主要分析软件的各种非功能性需求,包括安全性、可靠性、用户文档、效率、易用性、可维护性、可移植性等方面。5.2.软件测试分析第47页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业软件测试设计是软件测试中的一个重要过程,软件测试设计的详细程度将直接决定测试的质量。测试设计包括测试用例设计、测试流程安排两方面内容。测试用例设计:软件测试用例是测试执行的依据,是在测试需求分析中确定出测试内容的基础上设计形成的,其基本要素包括测试用例编号、测试标题、重要级别、测试需求、前提条件、测

42、试输入、操作步骤、预期结果。5.3.软件测试设计第48页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业测试用例设计原则:测试用例中的输入数据、操作应能够代表并覆盖各种合理及不合理、合法及非法、边界及越界、极限等情况。一个测试用例尽量只对应一个测试点。测试用例的描述应清晰、易理解,保证测试步骤的唯一性、测试结果的可判定性等。另外,我们在自动化测试时使用的脚本也是一种测试用例的表达形式。测试脚本的开发需要有一定的开发基础。5.3.软件测试设计第49页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业测试流程安排:测试流程是测试的总

43、体思路和顺序,对测试执行的先后顺序做出整体安排。测试流程设计可以在测试要点确定后进行,也可以在具体测试方法设计完成后进行。通常的测试流程:测试相关准备工作功能方面测试整体流程的测试非功能性方面测试,如果需要,还需对每部分测试内容的测试流程进行说明,如功能方面测试的先后顺序,先测试哪些功能的哪些部分,后测试哪个功能的哪个部分。5.3.软件测试设计第50页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业测试准备:根据测试设计确定出测试前期的准备工作,如测试数据准备、测试环境准备、测试工具准备、文档或其他资源的准备,保证系统的所有待测功能都可以执行,不能出现因数据的

44、准备不足而导致系统某些功能无法执行的情况。测试执行过程中应注意以下几方面:如实记录测试过程。及时更新测试用例。问题报告要完整、准确。回归测试:当一个周期测试执行完成后,需将测试情况与测试目标进行比较,确定是否需第二周5.4.测试执行与回归测试第51页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业期的测试,即回归测试。回归测试是针对已测试过的软件中出现的错误进行回归检查,同时对系统新功能和特征进行测试。回归测试过程中可从原设计文档中选择或修改原有测试方法和用例、或设计新的测试方法与用例,补充相应的测试数据、测试资源,建立相应的测试环境,确定相应的测试顺序。回归

45、测试原则。文档功能和数据中所有改变的地方都应被测试。受改变部分的或受要求的系统中的改变影响的所有未改变的部分都应被测试。所有其他部分应至少按样本进行测试。5.4.测试执行与回归测试第52页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业测试评估就是要回顾整个软件测试过程,对局部数据进行采样分析,判断测试是否充分,是否达到了测试目标,以便编制测试报告。测试报告是测试阶段最后的文档产出物,优秀的测试经理应该具备良好的文档编写能力,一份详细的测试报告包含足够的信息,包括产品质量和测试过程的评价,测试报告基于测试中的数据采集以及对最终的测试结果分析。5.5.软件测试评

46、估第53页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业思考题思考题1.什么是软件质量?什么是软件质量?答案:答案:2.什么是软件质量保证?什么是软件质量保证?答案:答案:3.什么是软件测试?什么是软件测试?答案:答案:4.什么是什么是W模型,该模型的特点是什么?模型,该模型的特点是什么?答案:答案:5.软件测试生命周期都有哪些过程?软件测试生命周期都有哪些过程?答案:答案:第54页/共56页22 三月 2023山东建筑大学计算机科学与技术学院软件工程专业C l i c k t o e d i t c o m p a n y s l o g a n .第55页/共56页2023/3/22 1:32山东建筑大学计算机科学与技术学院软件工程专业感谢您的观看!第56页/共56页

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > PPT文档

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁