版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
嵌入式软件测试
第一部分软件测试技术软件测试技术—提要软件测试基础软件测试的典型问题及对策嵌入式软件测试级别及内容软件测试过程及管理概述—测试的定义由人工或自动方法来执行或评价系统或系统部件的过程,以验证它是否满足规定的需求;或识别出期望的结果和实际结果之间有无差别。概述—测试的目的验证软件是否满足软件开发合同或任务书、系统/子系统设计文档、软件需求规格说明和软件设计说明所规定的软件质量特性要求;通过测试,发现软件错误;为软件产品质量的评价提供依据。概述—测试的地位有效的测试对于开发可靠、安全和成功的软件是必须的测试不是“银弹(silverbullet)”,它具有有效范围,它不是其他软件工程方法的替代品概述—测试的作用1证实给定的软件满足其规格说明测试公理不可能对程序进行完全的测试局限无法确信规格说明100%正确无法确信可以达到100%足够的软件测试无法保证测试环境100%满足测试要求概述—测试的作用2在给定的时限内尽可能多的发现缺陷和隐患测试公理测试无法说明软件没有缺陷局限软件质量体现在多个方面,但首先要面对并必须解决的方面是软件缺陷,在资源制约和技术限制的条件下,无法保证找到软件中所有的缺陷概述—测试的作用3为软件产品质量的评价提供依据测试公理发现的问题越多,那里潜在的问题也更多局限不可能通过测试获得100%的质量信心无法确信测试系统(或环境)的正确性无法确信测试人员完全理解了软件产品没有足够的资源彻底完成软件测试概述—测试的发展历程时间区间状况-1956面向调试的阶段1957-1978面向证实的阶段1979-1982面向缺陷的阶段1983-1987面向评价的阶段1988-面向预防的阶段概述—测试对象的特点软件被广泛应用,承担许多关键与核心任务软件是被开发或设计的,包括维护阶段软件是逻辑产品,可视性低软件是复杂的,输入空间无限大,可执行路径特别多大多数软件是定制的,可选标准构件少概述—软件的缺陷属性无法提供无缺陷的软件,缺陷已成为软件的固有属性和特征各种研究报告表明,每写1000行代码会产生30到85个缺陷大多数缺陷可通过测试捕获在大量的已完成测试的软件中,每1000行代码仍存在0.5~3缺陷软件缺陷有可能会给系统质量尤其是可靠性带来重大影响概述—缺陷与失效失误(mistake)在软件开发过程中软件开发人员产生隐错/缺陷(bug/defect)在软件产品中软件中存在设计者的错误行为(失误)→导致软件中留有错误的设计(缺陷)→导致软件错误地执行(故障)→导致软件的错误行为(失效)。故障(fault)在软件运行中缺陷被激活失效(failure)在运行阶段用户的经历概述—缺陷过滤器容错(Defecttolerance)编译失误避错(Defectavoidance)排错(defectremoval)审查使用缺陷逃逸测试概述—缺陷解决策略避错(Defectavoidance)第一次就做正确排错(Defectremoval)早发现,早实施容错(Defecttolerance)有缺陷,也能正确的完成任务恢复选用最佳恢复策略,失效后继续工作概述—如何获得高质量软件软件质量软件工程方法正式技术评审度量与控制标准与过程测试SCM与SQA概述—验证与确认验证与确认是广泛认可的质量保证方法和手段软件测试是软件验证与确认的重要组成部分验证是指对某项规定活动进行检查的过程,以确保该活动实现了规定功能确认是指审查已建立的软件产品是否符合客户需要的过程验证(Verification):
Arewebuildingtheproductright?确认(Validation):
Arewebuildingtherightproduct?概述—测试与调试测试不是调试,调试也不是测试,实际工作中人们常将测试与调试混为一谈主要区别:测试是一种检验,调试是推理过程测试从已知条件开始,使用预先定义的规程并且有可预知的结果;调试的开始条件可能是不可知的,结果不可预见测试经常由非程序设计人员完成,调试必须由程序设计者完成概述—嵌入式软件执行数据采集、控制等任务,逻辑复杂运行在资源受限系统上系统构成多样化部署后不受人的控制修补困难多为实时系统多为关键系统既可能运行在芯片上,也可能运行与大型工业控制系统概述—嵌入式软件测试对测试环境的要求高对专业测试的依赖程度高测试输入和结果获得需要专门的手段测试约束大软件测试典型问题及对策软件测试时机软件测试层次软件测试环境软件测试管理软件测试风险软件测试复杂性软件测试追溯性软件测试终止准则问题及对策—测试时机测试的时机问题代码出来了,甚至系统实现了,才开始测试文档开发滞后,更新不及时,追踪性差系统状态不稳定,测试的效果无法体现主要对策在软件开发过程中尽早开展软件测试做好软件设计评审和分析做好配置管理工作问题及对策—测试层次典型问题调试代替低层次测试,ATP代替高层次测试不测试无效和不期望的输入不希望外部介入完全依赖外部测试主要对策开展第三方测试对开发过程中的测试提出明确要求问题及对策—测试环境典型问题过分关注测试执行,而忽视测试设计期望自动工具替代测试工程师期望靠测试自动化节约测试成本期望靠测试自动化改善测试质量相信录制/回放工具是万能的主要对策先建立流程,再实现自动化与实际需求相结合问题及对策—测试管理典型问题被测对象来自非受控渠道测试没有文档化的计划、方案支持独立测试组与开发组之间关系不协调主要对策建立测试过程,进行测试项目策划、跟踪与控制,开展测试的质量保证和配置管理将需求工程延伸到测试问题及对策—测试风险典型问题不使用风险分析技术,测试不关注风险开发时希望成关键,测试时希望成一般主要对策通过风险分析确定测试范围、目标和策略将测试作为一种高风险活动进行管理问题及对策—测试复杂性典型问题认为测试工作很简单,测试成为新程序员的过渡性工作/不合格程序员的归宿认为软件测试太复杂,投入很大,做了但是没有效果进行无知的测试主要对策培训,指派有经验、富有创造性的人员承担测试采用适当的技术、有效的方法进行测试设计完善动态仿真环境,掌握测试工具问题及对策—测试追溯性典型问题软件需求规格说明太简单、过时即兴测试不创建和维护测试文档主要对策测试应源于用户需求维持完整的证据链进行可重复和可再现的测试问题及对策—测试终止准则典型问题测试组应对保证质量负责用发现缺陷数量评价测试业绩测试到资源耗尽就结束主要对策明确定义测试结束的标准正确理解测试的作用和局限性提高和改善软件设计质量级别—测试策略SRDCUIVST系统工程单元测试编码软件需求分析设计集成测试配置项测试系统测试级别—为什么要分级别?与软件开发过程相适应为了说明软件系统内单元/部件的互操作性需要进行三种基本的测试单独单元/部件的测试测试单元/部件间互操作测试单元/部件结合成的软件系统级别—单元测试的特点对象-模块依据-软件设计规格说明实现-串行或并行测试方法-白盒为主被测模块测试用例结果测试工程师级别—单元测试内容静态测试代码走查代码检查静态分析动态测试黑盒测试白盒测试基于数据结构的测试级别—单元动态测试焦点被测单元单元接口局部数据结构边界条件独立执行路径错误处理的路径测试用例级别—单元动态测试环境被测模块驱动模块结果测试用例模块接口局部数据结构边界条件独立执行路径错误处理的路径桩1桩2桩n级别—单元测试工作产品单元测试计划单元测试说明单元测试报告测试记录问题报告与问题处理报告质量记录级别—集成测试集成测试的对象是软件部件软件部件由软件单元组成集成测试前,部件中的所有单元必须已经完成了单元测试级别—集成测试准备要求的文档可提交软件概要设计说明软件接口设计说明被集成的软件单元已通过单元测试被测试构件已纳入配置管理中具备了满足要求的集成测试环境和测试工具级别—集成测试内容单元间的接口测试全局数据结构测试软件功能模块的功能测试性能测试边界和人为条件下的性能级别—集成测试焦点重点寻找与下述内容相关的缺陷软件系统结构的设计和构造在子系统层次上被集成的功能或操作组件/模块之间的接口和相互作用资源集成环境集成级别—集成测试通过准则单元间无错误连接满足各项功能、性能要求对错误有正确的处理对测试中的异常有合理解释接口正确级别—部件测试工作产品部件测试计划部件测试说明部件测试报告测试记录问题报告与问题处理报告质量记录级别—配置项测试概念配置项测试的对象是计算机软件配置项(CSCI)计算机软件配置项,是能够被独立地进行配置管理的,并能够满足最终用户功能的一组软件级别—配置项测试的目的发现软件配置项内存在的缺陷和问题验证软件配置项实现了所需的能力验证软件是否按软件需求规格说明书中确定的软件功能、性能、质量属性、约束及限制等技术要求进行工作检验软件配置项与相关的软件/硬件配置项接口的正确性和互操作性级别—配置项测试依据测试要求任务书、合同、测试规范等对软件测试有约束力的文件,规定了软件测试的类型、程度、管理,等等被测对象的规格说明软件需求规格说明书,等级别—配置项测试焦点功能(针对业务/任务需求,逐项)接口(关注通信需求与手段)配置项级的性能(关注容量、余量、瓶颈)质量属性(关注质量设计的实现)设计约束(关注资源的利用率和余量)级别—配置项测试主要内容功能测试性能测试接口测试容错测试安全性测试边界测试安装性测试文档审查用户操作特定条件下的行为与硬件配置项的集成与系统中其它软件配置项的集成与协作级别—配置项测试环境要求配置项测试对测试环境的关注更关注环境的可控性,通常会在仿真或模拟环境下进行,要求高度的可控性和尽量的真实性对侵入式测试方法的支持级别—配置项测试工作产品配置项测试计划配置项测试说明配置项测试报告测试记录问题报告与问题处理报告质量记录级别—系统测试概念软件系统作为一个整体进行测试,检验系统各部分之间的协调情况,以证实在目标环境下软件完成了全部系统功能和性能。系统测试是一系列不同测试的组合,这些测试目的不同,但都是为了整个系统成分能正常地集成到一起并完成分配的功能。级别—系统测试的目的发现软件系统范围内存在的缺陷和问题验证软件系统实现了所需的能力验证软件系统各部分之间的协调情况,以证实在目标环境下软件系统完成了软件任务书或系统/子系统设计文档规定的全部软件需求检验软件系统能否与其他指定的系统成功地进行协同操作级别—系统测试的依据测试要求任务书、合同、测试规范等对软件测试有约束力的文件,规定了软件测试的类型、程度、管理,等等被测对象的规格说明软件研制任务书系统/子系统需求规格说明系统/子系统设计文档,等级别—系统测试焦点功能(针对高级系统需求,强调完整的业务/任务场景)接口(关注与其他系统的协同操作)性能(关注总体性能和资源竞争)质量属性(关注因协同操作带来的质量属性问题)级别—系统测试主要内容功能测试性能测试接口测试容错测试安全性测试边界测试容量测试强度测试安装性测试文档审查用户操作特定条件下的行为软件与硬件的集成与协作软件与外部软件和系统的集成系统可用性测试级别—系统测试环境要求系统测试对测试环境的关注更关注环境的真实性对于嵌入式软件,软件运行环境较容易保证,但是通用测试工具环境缺乏对于非嵌入式系统,尤其是大型系统,软件运行环境较难保证,而通用测试工具环境丰富级别—系统测试工作产品系统测试计划系统测试说明系统测试报告测试记录问题报告与问题处理报告质量记录级别—回归测试原因超过60%的对软件系统的修改会无意中引入新的错误每修改6行代码就会引入一个新的错误目标检验修改是否达到了预期的目的检验是否损害了原有的正常功能,从而造成系统的回归级别—回归测试级别—回归测试流程识别变更,进行变更影响分析对原测试集进行维护,生成新的测试集从测试集中选择回归测试包用选择的测试包进行回归测试对回归测试结果进行分析并报告级别—回归测试用例集再测试全部用例基于风险选择测试基于操作剖面选择测试再测试修改的部分防火墙内再测试级别—更改的影响性分析通过跟踪矩阵,确定缺陷更改关联的范围通过修改属性(纠错、适用、需求),确定受修改影响的范围通过被修改工作产品内部关系,保证修改的内部一致性、正确性管理—典型测试过程测试要求测试策划测试设计和实现测试执行测试总结需求管理
策划管理跟踪与控制质量保证
配置管理软件测评项目管理
软件测试过程管理—关于测试过程的说明过程和阶段的设置与测试的组织形式有关独立性测试组织的文化和成熟度在开发组织开展内部测试时软件测评项目管理应与软件开发管理活动融合,如需求管理、项目策划、项目监督与控制、质量保证、配置管理管理—测试策划确定测试策略确定测试项确定测试方法确定测试工作产品确定资源要求确定人员要求工作量估算风险分析确定结束条件确定评价准则和方法测试进度规划确定度量及采集要求管理—测试设计和实现分解测试项根据测试项特征,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年新科版八年级科学下册阶段测试试卷
- 2025年上外版九年级地理下册月考试卷含答案
- 2025年岳麓版九年级地理上册阶段测试试卷含答案
- 眼病治疗药物经济学-洞察分析
- 投资并购案例分析-洞察分析
- 网络安全连接性能评估-洞察分析
- 2025年校内小卖部店面使用权转让合同3篇
- 2025年人教A版九年级数学下册阶段测试试卷含答案
- 二零二五年度智能交通系统出资人协议书3篇
- 2025年新科版七年级化学上册月考试卷
- GB/T 11072-1989锑化铟多晶、单晶及切割片
- GB 15831-2006钢管脚手架扣件
- 有机化学机理题(福山)
- 医学会自律规范
- 商务沟通第二版第4章书面沟通
- 950项机电安装施工工艺标准合集(含管线套管、支吊架、风口安装)
- 微生物学与免疫学-11免疫分子课件
- 《动物遗传育种学》动物医学全套教学课件
- 弱电工程自检报告
- 民法案例分析教程(第五版)完整版课件全套ppt教学教程最全电子教案
- 7.6用锐角三角函数解决问题 (2)
评论
0/150
提交评论