软件质量保证与测试(慕课版)

结合软件项目代码实例讲授软件测试,MOOC资源完善,立体化学习,注重能力培养
分享 推荐 8 收藏 150 阅读 18.6K
王智钢 (作者) 978-7-115-54221-2

关于本书的内容有任何问题,请联系 李召

1.结合软件项目代码实例讲授软件测试。
2.MOOC资源完善,实现立体化教学。
3.注重软件质量保证、测试分析设计能力和长信能力的培养。
4.适应现代碎片化学习需要,将知识体系分解为相对独立的知识点。

内容摘要

本书全面讲述了软件质量保证与测试的发展过程、基本概念、核心思想、基本原理、基本方法、主要过程、常用技术和工具。内容包括绪论、软件测试策略、黑盒测试、白盒测试、软件测试过程、面向对象测试、自动化测试、软件评审、软件质量与质量保证、测试的组织和管理及软件测试热点等。
本书以大量源程序代码和测试代码作为示例来进行讲解,结合软件开发,培养学生的测试分析、测试设计和测试开发能力。本书以基于“学习产出”的教育模式为指导,提供丰富新颖的习题,加强对学生“能力产出”的度量和考核,适应工程教育认证的要求。本书为慕课(MOOC)教材,可以提供全套网络教学资源,让暂不具备这些数字化资源的学校和老师能快速开设《软件质量保证与测试》《软件测试》慕课/微课课程。
本书可作为应用型本科软件工程、计算机等专业“软件质量保证与测试”、“软件测试”课程的教材,也可作为软件测试工程师的参考书。

目录

第1章 绪论 1
1.1 软件测试的产生与发展 2
1.1.1 软件测试的产生 2
1.1.2 软件测试的第一类测试方法 2
1.1.3 软件测试的第二类测试方法 2
1.1.4 软件测试与软件质量 3
1.1.5 软件测试及软件测试观念的发展过程 4
1.2 软件缺陷、软件错误、软件失败 4
1.2.1 第一个Bug 4
1.2.2 软件缺陷 5
1.2.3 缺陷产生的原因 5
1.2.4 PIE模型 7
1.3 软件测试的意义、原则和挑战 9
1.3.1 软件发展特点对软件测试的
影响 9
1.3.2 软件缺陷导致的事故案例 10
1.3.3 软件测试的意义 11
1.3.4 软件测试的基本原则 13
1.3.5 关于测试的错误认识 14
1.3.6 软件测试面临的挑战 14
习题 14
第2章 软件测试策略 18
2.1 软件测试的模型、过程和
生命周期 19
2.1.1 软件测试的模型 19
2.1.2 软件测试的过程 21
2.1.3 软件测试的生命周期 21
2.2 软件测试的方法和技术 24
2.2.1 静态测试与动态测试 24
2.2.2 黑盒测试和白盒测试 25
2.2.3 手工测试与自动化测试 27
2.2.4 软件测试的基本策略 27
习题 27
第3章 黑盒测试 29
3.1 黑盒测试简介 30
3.2 等价类划分测试法 31
3.2.1 等价类划分 31
3.2.2 等价类划分测试 34
3.2.3 等价类的组合 35
3.3 边界值测试法 36
3.3.1 边界值 37
3.3.2 边界值测试用例设计 38
3.3.3 边界值的组合 38
3.4 错误推测法 39
3.4.1 错误推测法简介 39
3.4.2 登录测试错误推测法应用 40
3.4.3 数据表操作测试错误推测法
应用及示例 41
3.5 判定表驱动法 41
3.5.1 判定表 41
3.5.2 判定表的建立 43
3.5.3 判定表驱动测试示例 43
3.6 因果图法 44
3.6.1 因果图介绍 45
3.6.2 因果图法设计测试用例的步骤 46
3.6.3 因果图法设计测试用例示例 46
3.7 场景法 48
3.7.1 事件流 48
3.7.2 场景法设计测试用例的步骤 48
3.7.3 场景法应用示例 49
3.8 正交实验法 50
3.8.1 正交实验法应用背景 50
3.8.2 正交实验法简介 51
3.8.3 正交实验法应用步骤和原则 52
3.8.4 正交实验法应用示例 52
习题 54
第4章 白盒测试 57
4.1 白盒测试简介 58
4.2 静态白盒测试 58
4.2.1 代码检查 58
4.2.2 静态结构分析 60
4.2.3 程序流程分析 60
4.2.4 编程规范 62
4.2.5 静态测试扫描工具 65
4.2.6 静态测试扫描工具安装与使用 68
4.3 逻辑覆盖 71
4.3.1 逻辑覆盖简介 71
4.3.2 语句覆盖 72
4.3.3 判定覆盖 73
4.3.4 条件覆盖 74
4.3.5 条件/判定覆盖 74
4.3.6 条件组合覆盖 75
4.3.7 修正条件/判定覆盖 76
4.3.8 覆盖标准 76
4.4 基本路径覆盖 77
4.4.1 控制流图 77
4.4.2 环路复杂度 79
4.4.3 基本路径覆盖及实例 80
4.5 测试覆盖分析工具 84
4.5.1 JaCoCo 84
4.5.2 JCov 84
4.5.3 Cobertura 85
4.6 循环测试 85
4.6.1 基本循环结构测试 85
4.6.2 复合循环结构测试 86
4.7 程序变异测试 87
4.7.1 程序变异 88
4.7.2 变异测试 89
4.7.3 变异测试的优缺点 91
4.8 符号执行 91
4.8.1 符号执行简介 91
4.8.2 符号执行示例 92
4.8.3 符号执行的特点和作用 93
4.9 程序插桩和调试 93
4.9.1 断言 93
4.9.2 设计插桩 94
4.9.3 程序调试 96
习题 98
第5章 软件测试过程 103
5.1 单元测试 104
5.1.1 单元测试简介 104
5.1.2 单元测试的任务 107
5.1.3 JUnit单元测试入门 111
5.2 集成测试 114
5.2.1 集成测试简介 114
5.2.2 一次性集成与增量式集成 119
5.2.3 自顶向下集成与自底
向上集成 120
5.2.4 基于调用图的集成 122
5.2.5 其他集成测试方法 124
5.3 系统测试 128
5.3.1 系统测试简介 128
5.3.2 系统测试项目 129
5.4 验收测试 138
5.4.1 验收测试简介 138
5.4.2 验收测试的分类 139
5.5 回归测试 140
5.5.1 回归测试简介 140
5.5.2 实施回归测试 141
习题 142
第6章 面向对象测试 146
6.1 面向对象特点对测试的影响 147
6.1.1 封装对测试的影响 147
6.1.2 继承对测试的影响 147
6.1.3 多态对测试的影响 148
6.1.4 复杂的依赖关系对
测试的影响 148
6.2 面向对象测试技术 149
6.2.1 面向对象测试技术简介 149
6.2.2 类测试 149
习题 150
第7章 自动化测试 151
7.1 自动化测试技术和工具 152
7.1.1 自动化测试简介 152
7.1.2 自动化测试的优点、
局限性和适用情况 152
7.1.3 自动化测试工具 154
7.2 自动化黑盒测试 155
7.2.1 自动化黑盒测试的基本原理 155
7.2.2 自动化黑盒测试的相关技术 156
7.3 自动化白盒测试 158
7.3.1 自动化白盒测试工具
Logiscope 158
7.3.2 Logiscope的功能 159
习题 160
第8章 软件评审 162
8.1 软件评审简介 163
8.1.1 软件评审的概念 163
8.1.2 软件评审的作用 163
8.1.3 软件评审的特点 164
8.2 软件评审活动 164
8.2.1 需求评审 165
8.2.2 概要设计评审 166
8.2.3 详细设计评审 167
8.2.4 数据库设计评审 168
8.2.5 测试评审 170
8.2.6 验收评审 170
8.3 软件评审技术和工具 171
8.4 软件评审的组织和相关因素 171
8.4.1 软件评审的组织 171
8.4.2 软件评审的相关因素 172
习题 173
第9章 软件质量与质量保证 174
9.1 软件错误及分类 175
9.1.1 各种软件错误 175
9.1.2 程序正确性的标准 176
9.1.3 软件错误的分类 176
9.2 程序中隐藏错误数量估计 177
9.2.1 种子模型法 177
9.2.2 Hyman估算法 178
9.2.3 回归分析 179
9.3 软件质量 180
9.3.1 软件质量基本概念 180
9.3.2 相关概念 181
9.3.3 软件质量特性 181
9.4 软件质量模型和质量度量 182
9.4.1 软件质量模型 182
9.4.2 软件质量的度量 184
9.4.3 不同质量之间的关系 185
9.5 软件质量管理与质量保证 186
9.5.1 软件质量管理 186
9.5.2 软件质量保证 187
9.5.3 软件质量保证体系 188
习题 190
第10章 测试的组织和管理 192
10.1 人员和资源组织 193
10.1.1 软件测试工作的特点 193
10.1.2 软件测试人员组织 193
10.1.3 软件测试资源组织 195
10.2 过程和进度管理 195
10.2.1 软件测试项目的生命周期 195
10.2.2 测试进度管理 199
10.3 测试文档、测试用例和
缺陷管理 199
10.3.1 测试文档管理 199
10.3.2 测试用例管理 200
10.3.3 缺陷管理 202
习题 203
第11章 软件测试热点 204
11.1 安全测试 205
11.1.1 安全测试简介 205
11.1.2 安全测试方法 206
11.1.3 安全测试示例 211
11.2 移动应用测试 218
11.2.1 移动应用测试简介 218
11.2.2 移动应用自动化测试
 工具简介 219
11.2.3 移动应用测试示例 221
习题 228
参考文献 231

读者评论

赶紧抢沙发哦!

我要评论

作者介绍

王智钢,男,硕士,副教授,主要从事软件测试教学和数据挖掘算法研究及应用。发表论文20余篇,承担省级及以上科研项目5项,所在团队获得2017年江苏省教学成果二等奖和2018年江苏省优秀教学团队称号。主持的《软件质量保证与测试》在线课程,获得教育部与优课在线协同育人MOOC建设项目立项,被列为江苏省2018-2019在线开放课程建设项目,目前同时在中国大学慕课和优课在线开展网络教学。

推荐用户

购买本书用户

相关图书

人邮微信
本地服务
人邮微信
教师服务
二维码
读者服务
读者服务
返回顶部
返回顶部