软件测试基本概念课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《软件测试基本概念课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 测试 基本概念 课件
- 资源描述:
-
1、软件测试基本概念目 录 软件缺陷1 1 软件测试的分类2 2 静态测试与动态测试3 3 主动测试与被动测试4 4 黑盒测试与白盒测试5 5 软件测试级别6 6 软件测试计划与用例7 7 专业测试人员的责任和要求8 81软件缺陷缺陷是质量的对立面要了解什么是缺陷(Defect),就必须清楚“质量(Quality)”概念,因为缺陷是相对质量而存在的,违背了质量、违背了客户的意愿,不能满足客户的要求,就会引起缺陷或产生缺陷1.软件质量的内涵质量的定义质量管理专家朱兰对“质量”的定义:满足使用要求的基础是质量的特征,产品的任何特征(性质、属性等)、材料或满足使用要求的过程都是质量特征。1986年ISO
2、8492给出了质量的定义:质量是产品或服务所满足明示或暗示需求能力的固有特性和特征的集合。固有特性:某事物中本来就有的,尤其是那种永久性的特性明示的特性:理解为规定的要求,用于描述或者客户明确提出的那些要求暗示的特性:是由社会习俗约定、行为惯例所要求的一种潜规则、不言而喻的。1.软件质量的内涵IEEESTD729:软件产品满足规定的和隐含的与需求能力有关的全部特征和特性。主要包括:软件产品满足使用要求的程度软件各种属性的组合程度用户对软件产品的综合反映程度软件在使用过程中满足用户要求的程度1.软件质量的内涵高质量软件标准体系(1)软件产品的质量是人们实践产物的属性和行为,是可以认识,可以科学地
3、描述的。并且可以通过一些方法和人类活动,来改进质量(2)软件开发过程中的质量是指过程满足明确和隐含需要的能力的特性之总和(3)应用领域或者业务上的质量在商业过程中有关的质量内容:培训、成品制作、宣传、发布日起、客户、风险、成本、业务等 1.软件质量的内涵产品质量的标准功能性 Functionality可用性 Usability可靠性 Reliability 性能 Performance容量 Capacity可伸缩性 Scalability可维护性 Service manageability兼容性 Compatibility可扩展性 Extensibility1.软件质量的内涵软件质量模型Boe
4、hm质量模型McCall质量模型ISO质量模型1.软件质量的内涵阐述性阐述性数据公开性数据公开性连贯性连贯性容错性容错性执行效率执行效率/储存效率储存效率存取控制存取控制/存取检查存取检查可训练可训练沟通良好沟通良好 简单性简单性易操作的易操作的工具工具自我操作性自我操作性扩展性扩展性一般性一般性模块性模块性软件系统独立性软件系统独立性机器独立性机器独立性通讯公开性通讯公开性正确性正确性可操作性可操作性产品产品操作操作产品产品修改修改产品产品维护维护 Boehm软件质量模型1.软件质量的内涵 McCall软件质量模型1.软件质量的内涵功能性可靠性可用性效率可移植性可维护性匹配性精确性互用性安全
5、性成熟性容错能力可恢复性可理解性可学习性可操作性时间表现资源表现可分析性可变化性稳定性适应性可测试性易安装性一致性可替换性用户自定义软件产品度量标准 ISO 9126三层模型1.软件质量的内涵 内部质量、外部质量和使用质量的关系1.软件质量的内涵软件质量特征(ISO9126)功能:与一组功能及其指定性质有关的一组属性,这里的功能是满足明确或隐含的需求的那些功能。可靠:在规定的一段时间和条件下,与软件维持其性能水平的能力有关的一组属性。易用:由一组规定或潜在的用户为使用软件所需作的努力和所作的评价有关的一组属性。效率:与在规定条件下软件的性能水平与所使用资源量之间关系有关的一组属性。可维护:与进
6、行指定的修改所需的努力有关的一组属性。可移植:与软件从一个环境转移到另一个环境的能力有关的一组属性。其中每一个质量特征都分别与若干子特征相对应。1.软件质量的内涵ISQ/IEC 9126-1:2001信息技术-产品质量的第一部分质量模型ISO/IEC TR 9126-2:2003IT-产品质量的第二部分外部质量ISO/IEC TR 9126-3:2003IT-产品质量的第三部分内部质量ISO/IEC TR 9126-3:2003IT-产品质量的第四部分使用质量ISO/IEC 14598-1:1999IT-软件产品评估-第一部分:综述ISO/IEC 14598-2:2000IT-产品评估-第二部
7、分:计划和管理ISO/IEC 14598-3:2000IT-产品评估-第三部分:开发者过程ISO/IEC 14598-4:1999IT-产品评估-第四部分:购买方过程ISO/IEC 14598-5:1998IT-软件产品评估-第五部分:评估方过程ISO/IEC 14598-6:2001IT-产品评估-第六部分:评估模型文档 ISO 9126(GB/T 16260)信息技术 软件产品质量 软件质量评价方法1.软件质量的内涵 ISO软件质量模型1.软件质量的内涵 ISO软件质量模型2.缺陷 Defect,Bug缺点(defect)谬误(fault)失败(failure)矛盾(inconsisten
8、cy)毛病(incident)偏差(variance)问题(problem)错误(error)异常(anomy)2.缺陷 Defect,Bug软件错误(error)在软件生存期内的不希望或者不可接受的人为错误。软件缺陷(defect)任何程序、系统中的问题,和产品设计说明书的不一致性,不能满足用户的需求。软件故障(fault)软件运行过程中出现的一种不希望或不可接受的内部状态。此时,如果没有适当的处理措施的话,软件故障就会导致软件失效。软件失效(failure)软件运行时产生的一种不希望或不可接受的外部行为结果。比如死机就是一种严重的软件失效。软件失效是软件用户所能直接感受到的。当软件出现失效
9、时,必然说明软件中存在缺陷。2.缺陷 Defect,BugIEEE(1983)729 软件缺陷一个标准的定义:从产品内部看,软件缺陷是软件产品开发或维护过程中所存在的错误、毛病等各种问题;从外部看,软件缺陷是系统所需要实现的某种功能的失效或违背。2.缺陷 Defect,Bug软件缺陷的表现:功能、特性没有实现或部分实现设计不合理,存在缺陷实际结果和预期结果不一致运行出错,包括运行中断、系统崩溃、界面混乱数据结果不正确、精度不够用户不能接受的其他问题,如存取时间过长、界面不美观 2.缺陷 Defect,Bug软件缺陷被引入的时间开发阶段规格说明书设计环节编码修复缺陷时也可能产生新的缺陷修改代码后
10、一定要进行回归测试!2.缺陷 Defect,Bug软件缺陷的产生的主要因素技术问题开发人员开发经验不足对采用的新技术不熟悉程序模块复杂度高接口参数多其他2.缺陷 Defect,Bug软件本身不合理的软件开发流程文档错误没有考虑软件实际使用场景,导致出现负载问题对程序的逻辑路径或数据范围的边界考虑不周全与硬件、第三方系统软件之间存在接口或依赖性其他2.缺陷 Defect,Bug团队工作对软件质量问题不重视对客户需求未调研清楚或存在误解不同阶段开发人员理解不一致其他2.缺陷 Defect,Bug2.缺陷 Defect,Bug软件缺陷的构成规格说明书是缺陷最容易出现的地方开发人员与用户的沟通问题软件
11、产品还没有设计、开发,完全靠想象描述系统的实现结果,有些特性还不够清晰需求的频繁变动,造成不一致性对规格说明书不够重视,在设计和写作上投入的人力、时间不足沟通不充分,只有设计师或项目经理知道的信息较多2.缺陷 Defect,BugRayleigh缺陷模型在真正的程序测试之前,通过审查、评审会可以发现更多的缺陷。规格说明书的缺陷会在需求分析审查、设计、编码、测试等过程中会逐步发现,而不能在需求分析一个阶段发现2.缺陷 Defect,Bug需求设计编码测试发布 时间 缺陷数早期缺陷发现(70%-90%)测试前在真正的程序测试之前,通过审查、评审会可以发现更多的缺陷。软件缺陷在不同阶段的分布2.缺陷
12、 Defect,Bug修复软件缺陷的代价缺陷的代价是非常高昂的一项统计数据表明,大约62%的项目成本用于修复软件缺陷。据美国NIST在2002年发布的一项研究估计,美国经济每年因软件Bug会损失600亿美金,约合0.6%的国民生产总值2.缺陷 Defect,BugBoehm在其著作软件工程经济学中提到如果需求阶段纠正一个错误的代价是1设计阶段是它的36倍编程阶段是它的10倍内部测试阶段是它的2040倍外部测试阶段是它的3070倍产品发布时,这个数字是401000倍代价不是呈线性增长,而是呈指数级增长2.缺陷 Defect,Bug缺陷成本2.缺陷 Defect,Bug缺陷的生命周期软件缺陷从被测
13、试人员发现一直到被修复,要经历一个特有的生命周期,阶段包括:新建、打开、拒绝、修复、关闭、重新打开等。2.缺陷 Defect,Bug2.缺陷 Defect,Bug从上述讨论可知,软件缺陷不仅存在于可执行程序中,而且存在于需求定义和设计的文档中,所以软件测试不仅仅是“为了发现错误而执行程序的过程”,而且还包括对产品规格说明书、技术设计文档等的测试。软件测试贯穿于整个软件开发过程,是软件验证和用户需求确认的统一,和软件评审密不可分。2软件测试的分类1.软件测试的分类方法方法目标目标/特性特性单元测试单元测试系统测试系统测试验收测试验收测试性能测试性能测试强壮性测试强壮性测试功能测试功能测试白盒测试
14、白盒测试黑盒测试黑盒测试测试阶段或层次测试阶段或层次适用性测试适用性测试可靠性测试可靠性测试集成测试集成测试安全性测试安全性测试1.软件测试的分类软件执行的角度软件执行的角度测试阶段的角度测试阶段的角度测试方法的角度测试方法的角度静态测试白盒测试动态测试单元测试黑盒测试集成测试系统测试验收测试回归测试灰盒测试1.软件测试的分类测试阶段的角度测试阶段的角度单元测试集成测试系统测试验收测试回归测试功能测试性能测试随机测试1.软件测试的分类测试方法的角度测试方法的角度白盒测试黑盒测试灰盒测试逻辑驱动基路测试等价类划分边界值分析因果图错误推测1.软件测试的分类测试过程3静态测试和动态测试 1.静态测试
展开阅读全文