第2次大课 软件测试策略及过程

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

软件工程系广州大学华软软件学院软件测试基础SoftwareTestingTechnology第二章软件测试策略与过程SoftwareTesting软件工程系本章教学目标理解软件测试的复杂性理解软件测试的方法与策略测试计划的制定明确单元测试的主要任务和过程明确集成测试的方法和确认测试的准则明确系统测试的八个领域测试要点明确验收测试的主要内容和相关配置SoftwareTesting软件工程系、无法对程序进行完全测试(1)测试所需要的输入量太大(2)测试的输出结果太多(3)软件实现的途径太多(4)软件规格说明没有一个客观标准2、测试无法显示潜在的软件缺陷和故障——通过软件测试只能报告软件已被发现的缺陷和故障,无法报告隐藏的软件故障。3、存在的故障现象与发现的故障数量成正比——结论:应当对故障集中的程序段进行重点测试ReturnSoftwareTesting软件工程系软件测试的复杂性分析(续)4、不能修复所有的软件故障——原因:没有足够的进行修复;修复的风险较大;不值得修复;可不算做故障的一些缺陷;“杀虫剂现象”。——结论:关键是要进行正确的判断、合理的取舍,根据风险分析决定哪些故障必须修复,哪些故障可以不修复。5、软件测试的代价——工作原则:就是如何将无边无际的可能性减小到一个可以控制的范围,以及如何针对软件风险做出恰当选择,去粗存精,找到最佳的测试量,使得测试工作量不多也不少,既能达到测试的目的,又能较为经济。SoftwareTesting软件工程系软件测试策略什么是软件测试策略?——是为软件工程过程定义的一个软件测试的模板,也就是把特定的测试用例方法放置进去的一系列步骤。软件测试策略包含的特征:(1)测试从模块层开始,然后扩大延伸到整个基于计算机的系统集合中。(2)不同的测试技术适用于不同的时间点。(3)测试是由软件的开发人员和(对于大型系统而言)独立的测试组来管理的。(4)测试和调试是不同的活动,但是调试必须能够适应任何的测试策略。SoftwareTesting软件工程系软件测试充分性准则对任何软件都存在有限的充分测试集合。如果一个软件系统在一个测试数据集合上的测试是充分的,那么再多测试一些数据也应该是充分的。这一特性称为单调性。即使对软件所有成分都进行了充分的测试,也并不表明整个软件的测试已经充分了。这一特性称为非复合性。即使对软件系统整体的测试是充分的,也并不意味软件系统中各个成分都已经充分地得到了测试。这个特性称为非分解性。软件测试的充分性应该与软件的需求和软件的实现都相关。软件越复杂,需要的测试数据就越多。这一特性称为复杂性。测试得越多,进一步测试所能得到的充分性增长就越少。这一特性称为回报递减率。SoftwareTesting软件工程系测试计划2.3.1概述2.3.2测试计划过程2.3.3测试目标2.3.4测试策略2.3.5制定有效的测试计划SoftwareTesting软件工程系测试计划概述软件测试计划的作用制定测试计划的原则如何制订软件测试计划制定测试计划时面对的问题衡量一份好的测试计划书的标准制定测试计划SoftwareTesting软件工程系什么是测试计划?测试计划就是描述所有要完成的测试工作,包括被测试项目的背景、目标、范围、方式、资源、进度安排、测试组织,以及与测试有关的风险等方面。SoftwareTesting软件工程系什么是测试计划?测试计划是项目计划的组成部分测试计划依赖于软件组织过程、质量文化和方针。测试计划是指导今后一系列测试活动的文件测试计划更是一个过程,随着项目的进展不断更新子曰:凡事预则立,不预则废,预即是计划。要想成功完成软件测试这项工作,必须首先建立测试计划。软件工程系.使软件测试工作进行更顺利2.促进项目参加人员彼此的沟通3.及早发现和修正软件规格说明书的问题4.使软件测试工作更易于管理SoftwareTesting软件工程系会遇到哪些问题?制定测试计划时,测试人员可能面对以下问题,必须认真对待,并妥善予以处理。1.与开发者意见不一致2.缺乏测试工具3.培训不够4.管理部门缺乏对测试工作的理解和支持5.缺乏用户的参与6.测试时间不足7.过分依赖测试人员8.测试人员处于进退两难的状态9.不得不说“不”SoftwareTesting软件工程系制定测试计划的原则制定测试计划是软件测试中最有挑战性的一个工作。以下原则将有助于制定测试计划工作。1.制定测试计划应尽早开始2.保持测试计划的灵活性3.保持测试计划简洁和易读4.尽量争取多渠道评审测试计划5.计算测试计划的投入SoftwareTesting软件工程系如何制订软件测试计划•1.认真做好测试资料的搜集整理工作•2.明确测试的目标,增强测试计划的实用性•3.坚持“5W”规则,明确内容与过程•4.采用评审和更新机制,保证测试计划满足实际需求SoftwareTesting软件工程系衡量一份好的测试计划书的标准•一份好的测试计划书应具备哪些特点呢?•1.它应能有效地引导整个软件测试工作正常运行,并配合编程部门,保证软件质量,按时将产品推出。•2.它所提供的方法应能使测试高效地进行,即能在较短的时间内找出尽可能多的软件缺陷。•3.它提供了明确的测试目标、测试的策略、具体步骤及测试标准。•4.它既强调测试重点,也重视测试的基本覆盖率。•5.它所制定的测试方案尽可能充分利用了公司现有的、可以提供给测试部门的人力/物力资源,而且是可行的。•6.它所列举的所有数据都必须是准确的——比如外部软件/硬件的兼容性所要求的数据、输入/输出数据等。•7.它对测试工作的安排有一定的灵活性,可以应付一些突然的变化情况,如当时间安排或产品出现的一些变化的时候。SoftwareTesting软件工程系测试计划的内容确认测试目标、范围和需求识别测试风险,制订相应的测试策略对测试任务和工作量进行估算确定所需的时间和资源进度安排和资源分派,包括团队角色、责任和培训测试阶段划分,包括阶段性任务和成果跟踪和控制机制SoftwareTesting软件工程系完整的测试计划书目标和范围:产品特性、质量目标、范围和限制。项目估算:工作量、资源的估算风险计划:风险分析、识别与回避/缓解对策进度安排:分解项目工作结构,指定时间/资源表资源配置:人员、硬件和软件等分配。跟踪和控制机制:质量保证、变更控制等SoftwareTesting软件工程系16componentsofTestPlan(IEEE,1983)1.Testplanidentifier(测试计划标识)2.Instruction(引言)3.TestItems(定义或主题词)4.Featurestobetested(需要被测试的功能)5.Featuresnottobetested(无需被测试的功能)6.Approach(方法和途径)7.Itemspass/failcriteria(测试通过、失败的标准)8.Suspensioncriteriaandresumptionrequirements(延迟的标准和再恢复的要求)9.Testdeliverables(测试交付的内容)10.TestingTasks(测试任务SoftwareTesting软件工程系测试计划标准格式–216componentsofTestPlan(IEEE,1983)11.Environmentalneeds(必备的环境)12.Responsibilities(职责)13.Staffingandtrainingneeds(人员和必需的培训)14.Schedule(时间进度表)15.Riskandcontingencies(风险和相关费用)16.Approvals(批准)SoftwareTesting软件工程系测试计划的过程计划初期计划起草内部审查计划讨论和修改测试计划的多方审查测试计划的定稿和批准计划执行跟踪和修改SoftwareTesting软件工程系测试目标在开始制定测试计划之前,需要确定测试目标测试目标也分为整体目标和阶段性目标、特定的任务目标SoftwareTesting软件工程系功能测试目标业务逻辑基本操作输入/输出接口各种使用场景异常操作SoftwareTesting软件工程系性能测试目标通过性能测试,不仅要通过压力测试发现性能瓶颈,还要获得系统的容量和系统所需要的各项具体的性能指标SoftwareTesting软件工程系测试策略的内涵针对风险(工作量、时间等压力)采取对策,包括遵照的标准取舍、测试任务的优先级等。如何更好地执行测试用例以及如何执行后续的回归测试。选定使用测试技术和工具。考虑影响资源分配的特殊情况。测试策略描述当前测试项目的目标和所采用的测试方法,描述不同测试阶段的测试对象、范围和方法以及每个阶段内所要进行的测试类型,或者说是在一定的软件测试标准、测试规范的指导下,依据测试项目的特定环境约束而规定的软件测试的原则、方式、方法的集合。SoftwareTesting软件工程系测试策略制定的基本要素输入,作为制定测试策略的依据,包括限制条件和已具有的资源。输出,制定策略的成果,即最终对所制定策略的定义或说明。制定策略的过程,测试组分析需求,参与设计的讨论,要求开发、编写针对所有测试级别的测试策略,并和项目组一起复审测试策略和计划。SoftwareTesting软件工程系如何有效制定测试策略全面细致地了解产品的项目信息分析各个因素对产品的影响确定测试范围、等级和测试重点使用尽可能少的有效测试用例,发现尽可能多的缺陷测试既不能失败、不足,也不能过度,而是寻求一个最佳平衡点SoftwareTesting软件工程系制定有效的测试计划在确定测试项目的任务之前,应清楚测试的范围和目标让所有合适的相关人员参与测试项目的计划制定,特别是在测试计划早期对测试的各阶段所需要的时间、人力及其它资源进行预估,测试范围能分解应尽量分解,针对每个测试任务仔细分析到位,尽量做到客观、准确、留有余地。制定测试项目的输入、输出和质量标准,并和有关方面达成一致。建立变化处理的流程规则,识别出在整个测试阶段中哪些是内在的、不可避免的变化因素,如何进行控制。Sof

1 / 50
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功