01_第一章 测试概述.ppt
《01_第一章 测试概述.ppt》由会员分享,可在线阅读,更多相关《01_第一章 测试概述.ppt(80页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、软件测试方法和技术软件测试方法和技术-软件测试概述软件测试概述杜军威杜军威内容概览内容概览软件测试的原理软件测试的原理,阐述软件测试的重要性、基本概念和方法等 软件测试的技术软件测试的技术,介绍软件测试在各个阶段(单元测试、集成测试、系统测试、验收测试和安装测试)的技术和方法,以及典型测试领域的特点和技术软件测试的实践软件测试的实践,介绍软件测试的团队和环境的建立,以及如何设计测试用例、报告软件缺陷、写测试报告、测试项目的管理机遇和挑战并存机遇和挑战并存Test Engineer目前国内软件业的弱点正是发展的前沿目前国内软件业的弱点正是发展的前沿QA/SupervisorProject/Qua
2、lity ManagerSenior Engineer软件测试在人才市场日益兴旺软件测试在人才市场日益兴旺软件测试在人才市场日益兴旺软件测试在人才市场日益兴旺软件测试工程师软件测试工程师 软件测试工程师,目前IT行业极端短缺的人才,中国软件业每年新增约20万测试岗位就业机会,而企业、学校培养出的测试人才却不足需求量的1/10,这种测试人才需求与供给间的差距仍在拉大。l 软件测试软件测试产品质量的保证产品质量的保证l 软件测试软件测试控制成本的关键控制成本的关键l 软件测试软件测试软件可靠性确认软件可靠性确认l 软件测试软件测试让企业具备国际竞争的实力让企业具备国际竞争的实力人力市场的测试人员位
3、置?4000虚位以待 Only in one web site-51job.cob课程目标本课程是计算机或软件专业课程,重在培养我们的实践本课程是计算机或软件专业课程,重在培养我们的实践能力,适应软件企业的工作环境和业界标准,并和国际先能力,适应软件企业的工作环境和业界标准,并和国际先进的软件开发理念和测试技术保持同步。进的软件开发理念和测试技术保持同步。通过本课程的学习,了解并掌握软件产品质量保证的基通过本课程的学习,了解并掌握软件产品质量保证的基本思想和科学体系、软件测试技术的基本内容,以及软件本思想和科学体系、软件测试技术的基本内容,以及软件测试的方法、技术和工具的使用,为全面掌握软件技
4、术和测试的方法、技术和工具的使用,为全面掌握软件技术和软件项目管理打下坚实的基础软件项目管理打下坚实的基础 课程目标通过本课程的学习,我们还可以了解并掌握:通过本课程的学习,我们还可以了解并掌握:l 有效的测试策略、方法和技术有效的测试策略、方法和技术l 测试计划和测试用例的设计测试计划和测试用例的设计l 测试自动化的引入、应用测试自动化的引入、应用l 测试团队的建立和测试项目的管理测试团队的建立和测试项目的管理l 更清楚、准确地报告测试缺陷更清楚、准确地报告测试缺陷l 对软件产品质量的正确评估对软件产品质量的正确评估l 软件测试和质量保证的关系和区别软件测试和质量保证的关系和区别l 第一章
5、概述1.1 软件的含义软件的含义1.2 软件开发过程的特性软件开发过程的特性1.3 软件质量软件质量1.4 软件缺陷软件缺陷1.5 软件测试方法软件测试方法1.6 软件测试分类软件测试分类1.7 软件测试与软件开发软件测试与软件开发1.1 软件的含义软件的含义能够完成预定功能和性能的、可执行的指令(计算机程序);使得程序能够适当地操作信息的数据结构;描述程序的操作和使用的文档。软件软件=程序程序+数据数据(库)(库)+文档文档+服务服务软件组成1.客户需求-Customer Requirements2.市场需求文档-MRD(Marketing Requirement Document)3.软件
6、规格说明书-Specifications4.技术设计文档 Technical Design Docs5.测试文档 Test Documents6.在线帮助-Online help7.产品发布注释-Release Notes/Read Me8.产品软件包-Release packagesR软件产品的其他内容 帮助文件 Help files 示例 Samples and examples to illustrate points 产品支持文档 Product support information 错误信息 Error messages 安装手册 Setup and installation in
7、structions 用户手册 User manual(s)产品标签 Label and stickers 产品广告或宣传材料 Ads and marketing material 软件特点软件则是逻辑的、知识性的产品集合,是对物理世界的一种抽象,或者是某种物理形态的虚拟化 软件是硬件的灵魂,硬件是软件的基础软件是硬件的灵魂,硬件是软件的基础 软件,是智慧和知识的结晶软件,是智慧和知识的结晶 软件不会软件不会“磨损磨损”,而是逐步完善,而是逐步完善1.2 软件开发过程的特性 1.2.1 软件开发的基本过程1.2.2 软件开发过程模型1.2.1 软件开发的基本过程软件开发过程需求分析需求分析:根
8、据客户的要求,清楚了解客户需求中的产品功能、特性、性能、界面和具体规格等,然后进行分析,确定软件产品所能达到的目标。设计设计:根据需求分析的结果,考虑如何在逻辑、程序上去实现所定义的产品功能、特性等,可以分为概要设计和详细设计,也可分为数据结构设计、软件体系结构设计、应用接口设计、模块设计、界面设计等。编程编程:将设计转换成计算机可读的形式。测试测试:对设计、编程进行验证和用户需求确认的过程维护:维护:维持软件运行,修改软件缺陷、增强已有功能、增加新功能、升级等。1.2.2 软件开发过程模型p 瀑布模型瀑布模型p 原型模型原型模型p 快速应用开发快速应用开发(RAD)模型模型p 改进的改进的V
9、模型模型p 螺旋模型螺旋模型p 增量模型和迭代模型增量模型和迭代模型p 构件组装模型构件组装模型p 并发模型并发模型p XP模型模型瀑布模型R原型模型原型模型Requirements AnalysisSystem DesignProgram DesignCoding Unit TestIntegration TestingSystem TestingAcceptance TestingOperation maintenancePrototypingUser/C原型+瀑布模型螺旋模型螺旋模型R快速应用开发快速应用开发(RAD)V模型RAD-V Model(改进)XP-eXtreme Progra
10、mming极限编程n最简单的可能就是最有效的n极限编程适合n小团队(2-10 programmers)n“高风险”n快速变化或不稳定的需求n强调可测试性n格言n“沟通、简化、反馈、激励”Kent BXP Lifecycle-生命周期阶段开发模型增量和迭代模型增量开发增量开发迭代开发迭代开发1.3 1.3 软件质量软件质量软件质量是客户满意度的体现软件质量是客户满意度的体现客户客户+质质+量量?质量质量(Quality)质量是系统、部件或过程满足质量是系统、部件或过程满足p软件质量:软件产品具有满足规定的或隐含要求能力要求有关的特征与特征总和(ISO 8492)p软件质量:软件产品满足使用要求的
11、程度 软件质量范围软件质量范围-3AnAccountability(可说明性可说明性)用户可以基于产品或服用户可以基于产品或服务的描述和定义进行使用务的描述和定义进行使用.(例如例如:市场需求说明书市场需求说明书,功能设计说明书功能设计说明书.)nAvailability(有效性有效性)产品或服务对于产品或服务对于99.999%客客户总是有效的户总是有效的 (例如例如:性能测试和恢复测试性能测试和恢复测试)nAccessibility(易用性易用性)对于用户对于用户,产品或服务非常产品或服务非常容易使用并且一定是非常有用的功能容易使用并且一定是非常有用的功能.(例如例如:确认测确认测试和用户可
12、用性测试试和用户可用性测试)高质量软件标准体系高质量软件标准体系产品质量产品质量是人们实践产物的属性和行为,是可以认识,可以科学地描述的。并是人们实践产物的属性和行为,是可以认识,可以科学地描述的。并且可以通过一些方法和人类活动,来改进质量且可以通过一些方法和人类活动,来改进质量.质量模型:McCall 模型,Boehm 模型,ISO 9126 模型过程质量过程质量:软件能力成熟度模型软件能力成熟度模型 CMM(Capability Maturity Model).国际标准过程模型国际标准过程模型 ISO 9000 软件过程改进和能力决断软件过程改进和能力决断 SPICE(Software P
13、rocess Improvement and Capability dEtermination)在商业过程中有关的质量内容在商业过程中有关的质量内容:培训、成品制作、宣传、发布日起、客户、风险、成本、业务等 产品质量的标准产品质量的标准-功能性功能性 Functionality-可用性可用性 Usability(简单安装;轻松使用;友好界面)-可靠性可靠性 Reliability(用户使用的根本)-性能性能 Performance-容量容量 Capacity-可测量性可测量性 Scalability-可维护性可维护性 Service manageability-兼容兼容性性 Compatibi
14、lity-可扩展性可扩展性 E软件质量特征软件质量特征(ISO9126)pp 功能功能:与一组功能及其指定性质有关的一组属性,这里的功能是满足明确或隐含的需求的那些功能。p 可靠可靠:在规定的一段时间和条件下,与软件维持其性能水平的能力有关的一组属性。p 易用易用:由一组规定或潜在的用户为使用软件所需作的努力和所作的评价有关的一组属性。p 效率效率:与在规定条件下软件的性能水平与所使用资源量之间关系有关的一组属性。p 可维护可维护:与进行指定的修改所需的努力有关的一组属性。p 可移植可移植:与软件从一个环境转移到另一个环境的能力有关的一组属性。其中每一个质量特征都分别与若干子特征相对应。其中每
15、一个质量特征都分别与若干子特征相对应。Boehm软件质量模型软件质量模型阐述性阐述性互用性互用性互用性互用性数据公开性数据公开性正确性正确性正确性正确性可靠性可靠性可靠性可靠性效率效率效率效率完整性完整性完整性完整性可用性可用性可用性可用性可维护性可维护性可维护性可维护性可测试性可测试性可测试性可测试性灵活性灵活性灵活性灵活性可移植性可移植性可移植性可移植性重复性重复性重复性重复性连贯性连贯性容错性容错性执行效率执行效率/储存效率储存效率存取控制存取控制/存取检查存取检查可训练可训练沟通良好沟通良好 简单性简单性易操作的易操作的工具工具自我操作性自我操作性扩展性扩展性一般性一般性模块性模块性软
16、件系统独立性软件系统独立性机器独立性机器独立性通讯公开性通讯公开性正确性正确性可操作性可操作性McCall模型模型设备独立性设备独立性易更改易更改可靠性可靠性效率效率总体总体 效用效用易用易用性性可维护性可维护性可测试性可测试性人体工程学人体工程学可移植性可移植性易懂性易懂性精确性精确性完整性完整性完全性完全性可说明性可说明性 设备功效设备功效易操作性易操作性沟通良好沟通良好自我操作性自我操作性架构性架构性简明性简明性易懂性易懂性可维护性可维护性模块独立性模块独立性连续性连续性软件过程质量软件过程质量n软件能力成熟度模型 CMM(Capability Maturity Model).n国际标准
17、过程模型 ISO 9000n软件过程改进和能力决断 SPICE(Software Process Improvement and Capability dEtermination)质量保证的策略质量保证的策略n主要分三个阶段:主要分三个阶段:以过程管理为重以过程管理为重:把质量的保证工作重点放在过程管理上,对制造过程 中的每一道工序都要进行质量控制。以新产品开发为重:以新产品开发为重:在新产品的开发设计阶段,采取强有力的措施来消灭由于设计原因而产生的质量隐患。以检测为重以检测为重:产品制成之后进行检测,只能判断产品质量,不能提高产品质量质量管理发展五个阶段质量管理发展五个阶段1900手工操作者
18、专职检验员1920过程统计技术1931全面质量管理1960以顾客为中心阶段时间1.4 软件缺陷(bug)n1.4.1 bug由来n1.4.2 软缺陷是什么n1.4.3 软件缺陷的含义1.4.1 软件缺陷(Bug)由来故事发生在1945年9月9日,一个炎热的下午。当时的机房是一间第一次世界大战时建造的老建筑,没有空调,所有窗户都敞开着。Grace Hopper正领导着一个研究小组夜以继日地工作,研制一台称为“MARK II”的计算机,它使用了大量的继电器(电子机械装置,那时还没有使用晶体管),一台不是纯粹的电子计算机。突然,MARK II死机了 1.4.1 软件缺陷(Bug)由来41软件缺陷例子
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 01_第一章 测试概述 01 第一章 测试 概述
限制150内