




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、文档编码 : CM9L4I7R10R3 HB10K10E2Y2B5 ZT7H10R7C8Z6一,测试基础 1 软件测试的 定义 1983 年, IEEE 提出的软件工程标准术语,软件测试定义如下: “使用人工和自动手段来运行或测试某个系统的过程, 其目的在于检验它是否满 足规定的需求或是弄清预期结果与实际结果之间的差别” ; 图示: Pass 被测系统 实际输出 比较 人工 自动化 Fail 估量输出 缺点:只强调动态测试,忽视了静态测试; G.J.Myers 认为: 1)程序测试是为了发觉错误而执行程序的过程; 2)好的测试方案是极可能发觉迄今为止尚未发觉的错误的 测试方案; 3)胜利的测试
2、是发觉了至今为止尚未发觉的错误的测试; 缺点:只强调了了发觉错误,而忽视了缺陷; 以上两种定义都忽视了性能和效率测试; 2 软件测试的 含义 (重在懂得): 软件测试是一个过程,包含如干活动,运行软件进行测试只是活动之一,它 也包含一些不运行软件的活动 进行软件测试可以运用人工方式也可以借助于工具 进行软件测试可以运行软件也可以不运行软件 第 1 页,共 14 页软件测试的目的是发觉软件错误和不足(缺陷) ,观看角度要全面 3 软件测试的 目的 : 证明(说明软件能够工作) 检测(发觉错误) 预防(治理质量) 测试目的之证明: 猎取系统在可接受风险范畴内可用的信心; 尝试在非正常情形和条件下的
3、功能和特性; 保证一个工作产品是完整的并且可用或者可被集成; 测试目的之检测: 发觉缺陷,错误和系统不足; 定义系统的才能和局限性; 供应组件,工作产品和系统的质量信息; 测试目的之预防: 澄清系统的规格和性能; 供应预防或削减可能制造错误的信息; 在过程中尽早检测错误; 确认问题和风险,并且确认解决这些问题和风险的途径; 4 软件测试的 主要工作 : 检视代码,评审开发文档 进行测试设计,写作测试文档(测试方案,测试方案,测试用例等) 搭建测试环境,执行测试,发觉软件缺陷,提交缺陷报告,并确认缺陷最终 得到了修正 通过测试度量软件的质量 第 2 页,共 14 页5 软件危机的表现: 随着软件
4、复杂度增加, 对软件质量的要求越来越高, 软件成本增加, 投入比较大, 系统可用度很低,进度大量滞后; 由于缺乏大型软件开发体会和软件开发数据积存,开发工作方案很难制定; 开发早期 需求分析 不够明确,造成开发后期冲突集中暴露; 不遵循开发规范,开发文档不完整,软件 难以爱惜 ; 缺乏严密有效的 软件质量检测手段 ,交付给用户的软件 质量差 ; 6 软件危机的后果: 软件质量不高,很难稳固; 质量方面 软件项目延期,进度无法把握; 进度方面 成本增加,无法把握预算; 成本方面 7 软件危机的根源: 依据摩尔定律,硬件进展很快,相应对软件系统的期望越来越高; 软件系统复杂程度增大,开发难度增大,
5、个人已经很难完成开发工作 , 团队 协作对软件需求的懂得和沟通显现问题; 软件开发是人的智力活动,无法用已有的产业工程方法来组织治理; 软件生命周期(基于瀑布模型)各个阶段: 第 3 页,共 14 页计 评 价 运 行 测 试 划 需求分析 编 码 设 计 8 为什么要划分生命周期: 把一个混沌的研发过程清楚化; 便于监控和治理; 每个阶段都会有成果物输出,把智力活动成果固化下来,易于爱惜; 人员利用更加合理; 9 软件生命周期各个阶段具体工作内容: 方案: 确定软件开发总目标; (需要研发什么?) 给出软件的功能, 性能,牢靠性以及接口等方面的设想; (需要产品做什么?) 争论完成该项目的可
6、行性(包括技术可行性和成本可行性) ,探讨问题解决 方案;(是否可行?) 对可供开发使用的资源,成本,可取得的效益和开发进度作出估量; (多长 时间能够完成?耗费人力,物力?取得效益?) 制定完成开发任务的实施方案; (如何完成?步骤如何?) 需求分析: 第 4 页,共 14 页对开发的软件进行具体的定义, 由需求分析人员和用户共同争论预备, 哪些需求 是可以中意的,并且赐予精确的描述,写出软件需求说明书 SRSSoftware RequirementSpecification;(把用户的需求细化成可以用来设计的需求规格说明 书 SRS) 针对软件项目的研发(有客户) 软件公司 针对软件产品的
7、研发(有用户群) 软件研发的类型不同,需求的来源也不同,需求分析中的“用户”针对的具体对 象也不同; 针对产品的软件研发 需求来源:市场 调研 用户:市场调研人员 特点:自己 想研发什么,自己就来研发 针对项目 的软件研发 需求来源:客户要求 用 户:实际的用户 特点:别人想研发什么,我们帮着研发 设计: 设计是软件工程的技术核心, 这个阶段需要完成相应的设计说明书, 设计原就是: 高内聚,低耦合(每个模块功能单一,模块间的联系简洁) ; 概要设计阶段需要完成概要设计说明书 HLDHigh Level Design,把每项需 求转换成相应的体系结构,每一部分是功能明确的模块; (每个功能设计一
8、 个模块) 具体设计阶段需要完成具体设计说明书 LLDLow Level Design ,对每个模块 要完成的工作进行具体的描述; (实现每个模块,写函数实现) 编码: 把软件设计转换成运算机可以接受的程序, 即写成以某个程序设计语言表示的源 程序清单,使用 RDBMS 工具建立数据库;(写代码,建立相应数据库) 测试: 第 5 页,共 14 页测试是检验软件是否符合客户需求, 试工作分为: 单元测试(参照 LLD ) 集成测试(参照 HLD ) 系统测试(参照 SRS) 运行和爱惜: 达到质量要求, 一般由独立的小组执行, 测 这个阶段将软件交付用户投入正式使用, 以后便进入爱惜阶段, 可能
9、有多种缘由 需要对它进行修改,如软件错误,系统软件升级,增强软件功能,提高性能等; 10 软件研发相关要素: 人员,过程,工具;(研发既包括开发也包括测试) 只有合适的人员借助合适的工具经过合适的过程才能研发出高质量的软件; 工具为人员和过程服务,起帮忙作用,起关键作用的是人员和过程; 11 软件项目组人员组成: 项目组一般由项目经理领导并负责制定项目方案, 人员参加: 分析人员; 设计人员; 开发人员; 测试人员; 从技术方面保证软件质量 配置治理人员; 支配任务; 项目组一般由以下 SQA(Software Quality Assurance )质量保证人员; SQA 独立与其他部门,起监
10、 督作用,从流程方面保证软件质量; 常见项目组架构: 第 6 页,共 14 页开发经理 项目经理 SQA 测试经理 配置经理 软件开发组 软件测试组 配置治理组 软件开发组:包括开发经理,分析人员,设计人员,开发人员; 软件测试组:包括测试经理,测试人员; 配置治理组:包括配置经理,配置治理员 CMOConfiguration Management Officer 12 基本软件研发流程: 瀑布模型 优点: 1)划分阶段,阶段清楚; 2)各阶段都有成果物输出; 3)人员分协作理; 缺点: 1)测试介入过晚,发觉缺陷过晚; 2)修复缺陷的成本大; 瀑布模型适用于稳固的项目(稳固的版本)和增量的开
11、发; 螺旋模型 优点:迭代,引入了风险分析; 缺点:复杂度大,成本高,研发周期长,依靠于风险分析,风险分析必需准 确,充分; 螺旋模型适用于预研,人事安全的产品,如金融,军事,航天等;而且必需 配备一个风险分析专家; 第 7 页,共 14 页RUP 流程 Rational Unified Process统一软件开发过程(商用) 该流程针对于面对对象的设计; 优点: 1)子系统相对比较独立; 2)对需求进行了严格的治理跟踪; 3)把复杂的系统分解成比较简洁的系统(逐步实现) 缺点: 1)对需求分析人员才能要求较高; 2)周期长,成本高; 3)对系统架构人员才能要求特别高; 该流程适用于大型项目,
12、如 ERP,CRM 等; IPD 流程 Integrated Product Development 集 成产品研发流程( IBM 研发) 该流程针对以产品为目标的软件公司及涉及到软硬件结合的产品; 优点: 1)把各个部门间的流程集成在一起,排除了部门间的壁垒; 2)端到端的研发活动; 3)把每个项目都作为一项投资来看; 13 软件研发的几个重要过程: 需求治理,配置治理,缺陷治理,同行评审; 14 测试与调试的差别: 1)测试有目的性, 有预期的输出; 调试是没有目的性的, 从未知的条件 开头,操作很随机,终止的过程不行估量; 2)测试由测试人员进行;调试由开发人员进行; 3)先通过测试发觉
13、错误或者缺陷, 然后开发人员再通过调试去定位引发 错误或者缺陷的根源; 第 8 页,共 14 页4)测试是一个过程, 可重复进行; 调试只是一次性的行为, 没有可重复 性; 15 软件缺陷和 Bug 的概念: 软件缺陷:既指静态存在于软件工作产品(文档,代码)中的错误,也指软 件运行时由于这些错误被激发引起的和软件产品预期属性的偏离现象; Bug:代码中的缺陷;有时也被泛指因软件产品内部的缺陷引起的软件产品 最终运行时和预期属性的偏离; 软件错误,软件缺陷, Bug 在实际工作中可以认为一样; 16 引入缺陷的缘由:(缘由有许多,主要靠懂得) 1)需求分析显现偏差; 2)设计过程中缺乏有效的沟
14、通或者没有沟通,以致与对需求的懂得显现偏差或 者设计人员设计才能低; 3)软件复杂度越来越高; 4)编码环节产生错误(程序错误或者开发人员对设计的懂得不一样) ; 5)需求不断变更; 6)项目进度的压力; 7)不重视开发文档; 8)软件开发工具本身隐匿的问题; 9)白盒测试可能修改代码引入缺陷; 17 缺陷分类: 遗漏:规定的或预期的需求未表达在产品中 也可能需求分析阶段就遗漏了需求) ; (可能未将规格说明书全面实现, 错误:未将规格说明书正的确现(可能设计错误,也可能是编码错误) ; 第 9 页,共 14 页额外的实现:规格说明书并未规定的需求被纳入产品,得到实现; 18 缺陷放大类型:
15、随着级数的增加, 2/3 的缺陷后期会被放大; 在前期尽早去发觉缺陷,使得缺陷不会在后期被放大; 解决方法: 1)尽早参加评审,与用户,分析人员,设计人员,编码人员沟通沟通; 2)测试预备工作尽早开展; 3)尽早预防,做缺陷分析; 如何挑选模型:从质量,成本,进度的方面考虑; 二,软件质量 1质量的定义 质量概念的引入:实体 产品:手机, MP3,汽车, ERP 软件,桌子 服务:酒店,出租车,快递,培训,美容 ISO 关于质量的定义表示如下: 一个实体的全部特性, 基于这些特性可以中意明显的或隐含的需求; 而质量就是 实体基于这些特性中意需求的程度; (实体特性中意用户需求的程度; ) 用户
16、真实需求 需求的三个层次 显式需求 引 质量的三个层次 出 隐式需求 第 10 页,共 14 页2软件质量的三个层次 内部质量:从产品立项到产品交付用户之间产生的全部工作产品的质量; 目 标是开发者定义的, 并且可以验证, 即看产品是不是在做让它做的事情; (符 合需求规格) 衡量标准:需求规格说明书 SRS(显式需求和隐式需求) ; 验收质量:是用户来评判,衡量标准是显式需求; 目标是客户定义的,即判 断我们是不是在做我们需要作的事情; (符合用户显式需求) 使用质量:用户依据真实的需求(包含显式需求和隐式需求)在 真实的使用 过程中 进行评判;(符合用户实际需求) 3影响软件质量的因素:
17、流程 技术 组织 以上三方面是影响软件质量的 铁三角 ,软件质量的提高应当是一个综合的因素, 需要从每个方面进行改进,同时仍需要兼顾成本和进度; 技术 流程 产品质量 组织 流程对质量的影响 什么是流程? 它说明白一系列活动及活动间的执行关系; 什么是过程? 第 11 页,共 14 页过程是方法论,更为具体的流程,它包含许多因素: 角色:涉及到活动中的人; 职责:角色在活动中应当担当的责任或任务; , 入口准就 入口条件,入口标准 :开头某项活动所必需中意的条件或环境; 输入:开头某项活动时多必需参考的资料或需要加工的原材料; 活动:构成过程的一系列动作(活动) ; 输出:完成某项活动所能够交
18、付的工作成果; 出口准就 出口条件,出口标准 :退出某项活动所必需中意的条件或环境; 培训:完成某项动所需要的技术支持; 方法/工具:完成某项活动所需要的方法 /工具; 模板:输出成果必需中意,符合的标准; 查检表 Checklist: QA 的工作基础; 度量Measurement:采集一些数据进行度量; 流程对质量的影响: 1)使得不行见的生产过程变的可见; 2)分解质量目标到各个活动中去,使得质量目标易于实现并把握; 3)使得整个生产效率提高,削减内耗,节省成本; 4)资源分协作理 5)流程可以推动人做事情; 技术对质量的影响 什么是技术?技术就是科学的方法论; 第 12 页,共 14 页技术 开发 设计 预备性因素 编码 设计 测试 构造上的工艺设计(涉及硬件) 现有的员工自身承担的技术 技术的承载者是人 企业自身是否重视技术学问的 积存(包括胜利的体会,经典的 案例以及教训 流程与技术的关系: 1)只有流程,没有技术,不行能进行现代化软件开发; 2)只有技术,没有流程,不行能研发出高质量的软件产品; 组织对软件质量的影响 什么是组织?组织约等于高层领导; 组织
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030中国医院警报管理系统行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国医疗保健中的增强现实(AR)和虚拟现实(VR)行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国分数高压电动机行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国冷藏汽车行业市场深度调研及前景趋势与投资研究报告
- 音程与旋律变化的深入剖析试题及答案
- 药物化学研究方法与步骤试题及答案
- 细节决定创业扶持政策的实施成效试题及答案
- 施工现场安全演练方案设计2025年试题及答案
- 电池计算技术在新能源汽车中的应用试题及答案
- AI赋能智慧医疗的伦理与人文关怀融合
- 2022全国高考真题化学汇编:专题 烃 卤代烃
- 脑血管病介入诊疗并发症及其处理课件
- 家校共育一年级家长会ppt
- 《微电子学概论》第八章-光电子器件课件
- 化学分析送样单2
- 化工原理教案:6 吸收
- 花篮拉杆悬挑脚手架专项施工方案
- 【高考真题】2022年新高考浙江语文高考真题试卷(Word版含答案)
- 铝镁料仓等施工方案精品
- 目前最准确的通达信缠论分笔公式
- 《丑小鸭》教学设计
评论
0/150
提交评论