软件质量与软件测试理论

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2016/7/30
1
概要
软件质量
软件质量的定义
软件缺陷
经典软件缺陷案例
软件测试
软件测试的定义
常用软件质量模型
软件缺陷的定义
软件测试的目的
软件质量的度量
软件缺陷产生的原因
一套完整的软件测试 体系
软件缺陷的分类
软件的生命周期&软 件测试的生命周期
常用软件缺陷管理工 具
常用软件测试方法
软件测试用例设计理 论
• 软件缺陷的定义
• 1.未达到产品说明书标明的功能, 或者超出说明书指明的范围。 • 2.出现了产品说明书指明不会出 现的错误。 • 3.超出产品说明书指明范围。 • 4.软件难以理解、不易使用、运 行速度缓慢,或者最终用户认为 不好。
2016/7/30
9
软件缺陷
• 软件缺陷产生模型图
2016/7/30
2016/7/30
2
软件质量
• 软件质量的定义
• 满足设计规定需求的程度 • 满足用户使用需求的程度 它是一个相对概念,跟用户的认知,彼时技术条件有很大关系。
2016/7/30
3
软件质量
• 常用软件质量模型
• 模型一:Boehm分层质量模型 • 模型二:GE模型 • 模型三:ISO质量模型
1979年 GE模型 2001年 ISO模型
10
软件缺陷
• 软件缺陷产生的原因
• • • • 产品规格说明书 设计方案 编码 其他,质量期望和成本因素等
*软件缺陷是不可避免的
2016/7/30
11
软件缺陷
• 软件缺陷带来的代价
2016/7/30
12
软件缺陷
• 软件缺陷的分类
按级别分类 • 致命的(fatal) • 严重的(critical) • 一般的(major) • 微小的(minor 按模块分类 • Wifi &BT • Audio • GPU • CPU • Touch • Display
软件测试
• 软件测试的目的
• 减少软件缺陷,提高软件质量 • 验证需求,检验软件是否满足规定的需求 • 用户希望通过软件测试暴露软件中隐藏的错误和缺陷,以考虑是否可接 受该产品。 • 软件开发者不仅希望找出错误和缺陷,更加希望测试成为表明软件产品 中不存在错误的过程与证据。
2016/7/30
16
软件测试
2016/7/30
20
谢谢
2016/7/30 21
按照测试类型 分类
• 稳定性测试 • Smoke测试 • 响应时间 • FPS
2016/7/30
13
软件缺陷
• 常用的软件缺陷管理工具
• • • • • • Bugzilla Jira BugFree EasyBug Mantis QC
2016/7/30
14
软件测试
• 软件测试的定义
• 使用人工和自动化手段来运行或测试软件,检验它是否满足规定的需求。
• 几个重要的观点
• • • • • 软件测试并不只是找程序中的错误 软件测试是为了证明程序有错,而不是证明程序无错误 一个好的测试用例是在于它能发现至今未发现的错误 一个成功的测试是发现了至今未发现的错误的测试 没有发现错误的测试也是有价值的,完整的测试是评定软件质量的一种方法
2016/7/30
15
1976年 boehm 模型
2016/7/30
4
软件质量
• 模型一:Boehm 分层模型
Biblioteka Baidu
2016/7/30
5
软件质量
• 模型二:GE 模型(General Electrics Model)
可维护性
修正
转移
可移植性
运行
可使用性
2016/7/30
6
软件质量
• 模型三:ISO软件质量模型
2016/7/30
• 一套完整的软件测试体系
测试计划 • 定义测试需求 报告,制定测 试标准,安排 测试人员等 测试设计 • 将测试计划分 解成若干个可 执行的测试过 程 测试开发 • 开发测试用例, 建立可重复只 用的测试流程 测试执行 • 参照软件测试 生命周期图 测试评估 • 评定测试结果, 报告
2016/7/30
7
软件质量
• 软件质量的度量
• 1. 外部度量
• 这是在测试和使用软件产品过程中进行的,通过观察该软件产品的系统行为,执行 对其系统行为的测量得到度量的结果。
• 2. 内部度量
• 这是在软件设计和编码过程中进行的,通过对中间产品的静态分析来测量其内部质 量特性。内部度量主要目的是为了确保获得所需的外部质量和使用质量,与外部关 系是二者相辅相成,密不可分。
17
软件测试
• 软件生命周期和软件测试的生命周期
软件测试生命周期存在于软件生命周期的各个阶段
2016/7/30
18
软件测试
• 常用软件测试方法
测试方式 • 手动测试 • 自动测试 按计划 • 单元测试 • 集成测试 • 系统测试 • 验收测试 按类型 • 白盒测试 • 静态测试 • 动态测试 • 黑盒测试 • 功能测试 • 逻辑功能测试 • 界面测试 • 易用性测试 • 兼容性测试 • 性能测试 • 时间性能(响应时 间) • 空间性能 • 一般性能 • 稳定性 • 流畅度 • 负载测试 • 压力测试 其他 • 冒烟测试 • 回归测试 • 随机测试
2016/7/30
19
软件测试
• 软件测试用例设计理论
黑盒测试用例设计方法 白盒测试的测试方法
等价类划分法 边界值分析法
代码检查法 静态结构分析法
错误推测法
因果图法 判定表驱动法 正交试验设计法 功能图法 场景法
静态质量度量法
逻辑覆盖法 基本路径测试法 域测试 符号测试 Z路径覆盖 程序变异
*黑盒测试用例详解
• 3. 使用度量
• 这是在用户使用过程中完成的,因为使用质量是从用户观点来对软件产品提出的质 量要求,所以它的度量主要是针对用户使用的绩效,而不是软件自身。
2016/7/30
8
软件缺陷
• 经典软件缺陷案例
• 英特尔奔腾浮点除法缺陷 • 跨世纪“千年虫”问题 • 2011 年温州7.23 动车事故 • 12306火车票网上订票系统
相关文档
最新文档