标题：全国计算机等级考试专用辅导教程：四级软件测试工程师
图书信息
出版社: 电子工业出版社; 第1版 (2012年1月1日)
丛书名: 全国计算机等级考试专用辅导丛书
平装: 249页
正文语种: 简体中文
开本: 16
ISBN: 7121154331, 9787121154331
条形码: 9787121154331
尺寸: 25.7 x 20.1 x 1.8 cm
重量: 440 g
内容简介
《全国计算机等级考试专用辅导教程:四级软件测试工程师(2012版)》紧扣最新版考试大纲，结合编者多年从事命题、阅卷及培训辅导的实际经验编写而成。《全国计算机等级考试专用辅导教程:四级软件测试工程师(2012版)》章节安排与官方教程同步，主要内容包括：软件测试的基本概念，软件测试类型及其在软件开发过程中的地位，代码检查、走查与评审，覆盖率（白盒）测试，功能（黑盒）测试，单元测试和集成测试，系统测试，软件性能测试和可靠性测试，面向对象软件的测试，Web应用软件测试，其他测试，软件测试过程和管理，软件自动化测试，软件测试的标准和文档，软件测试实践等。章节前插入了近几年考试分布，精讲考试重点与难点，讲解过程中链接最新2年的考试真题，方便读者了解最新考试动态。章节末安排了典型题讲解和适量过关习题。书末附有3套样题和解析，供考生考前实战演练。《全国计算机等级考试专用辅导教程:四级软件测试工程师(2012版)》以全国计算机等级考试考生为主要读者对象，适合于考生在考前复习使用，也可作为相关考试培训班的辅导教材。
目录
第1章 软件测试的基本概念 1
1.1 软件质量的概念 1
1.1.1 软件质量的定义 1
1.1.2 软件质量的属性 2
1.1.3 软件质量的模型 3
1.1.4 软件质量的度量 5
1.2 软件测试的概念 5
1.2.1 软件测试的定义与目的 5
1.2.2 软件测试的原则 6
1.3 软件的缺陷与错误 6
1.3.1 软件缺陷的定义和类型 6
1.3.2 软件缺陷的级别 7
1.3.3 软件缺陷产生的原因 7
1.3.4 软件缺陷的构成 8
1.3.5 修复软件缺陷的代价 8
1.4 软件测试的经济学与心理学 8
1.4.1 软件测试的心理学 8
1.4.2 软件测试的经济学 9
1.5 软件质量保证 9
1.5.1 软件质量保证概要 9
1.5.2 软件质量保证活动的实施 9
1.5.3 SQA与软件测试的关系 10
1.6 典型考题分析 10
1.7 过关必备 13
第2章 软件测试类型及其在软件开发过程中的地位 15
2.1 软件开发阶段 15
2.1.1 软件生存周期 15
2.1.2 软件测试的生存周期模型 16
2.1.3 测试信息流 16
2.2 规划阶段的测试 16
2.2.1 目标阐述 16
2.2.2 需求分析 16
2.2.3 功能定义 17
2.2.4 规划阶段进行的测试 17
2.3 设计阶段的测试 17
2.3.1 外部设计 17
2.3.2 内部设计 17
2.3.3 设计阶段的测试 17
2.3.4 伪代码分析 17
2.4 编程阶段的测试 18
2.4.1 白盒测试与黑盒测试 18
2.4.2 结构测试与功能测试 18
2.4.3 路径测试：覆盖准则 18
2.4.4 增量测试与大突击测试 18
2.4.5 自顶向下测试与自底向上测试 18
2.4.6 静态测试与动态测试 19
2.4.7 性能测试 19
2.5 回归测试 19
2.6 运行和维护阶段的测试 20
2.7 典型考题分析 20
2.8 过关必备 20
第3章 代码检查、走查与评审 22
3.1 桌上检查 22
3.1.1 桌上检查的检查项目 22
3.1.2 对程序代码做静态错误分析 22
3.2 代码检查 23
3.2.1 特定的角色和职责 23
3.2.2 代码检查过程 23
3.2.3 用于代码检查的错误列表 23
3.3 走查 24
3.3.1 特定的角色和职责 24
3.3.2 走查的过程 24
3.3.3 走查中的静态分析技术 25
3.4 同行评审 26
3.4.1 为什么需要评审 26
3.4.2 同行评审的角色和职能 26
3.4.3 同行评审的内容 26
3.4.4 评审的方法和技术 27
3.5 典型考题分析 27
3.6 过关必备 29
第4章 覆盖率（白盒）测试 31
4.1 覆盖率概念 31
4.2 逻辑覆盖 31
4.2.1 语句覆盖 32
4.2.2 判定覆盖（分支覆盖） 32
4.2.3 条件覆盖 32
4.2.4 条件/判定覆盖 32
4.2.5 条件组合覆盖 32
4.2.6 路径覆盖 32
4.2.7 ESTCA覆盖 33
4.2.8 LCSAJ覆盖 33
4.3 路径测试 34
4.3.1 分支结构的路径测试 34
4.3.2 循环结构的路径测试 34
4.3.3 Z路径覆盖与基本路径测试 35
4.4 数据流测试 37
4.4.1 定义/使用测试的几个定义 37
4.4.2 定义/使用路径测试覆盖指标 38
4.5 基于覆盖的测试用例选择 38
4.5.1 如何使用覆盖率 38
4.5.2 使用最少测试用例来达到覆盖 38
4.6 典型考题分析 39
4.7 过关必备 54
第5章 功能（黑盒）测试 56
5.1 等价类测试 56
5.1.1 等价类的概念 56
5.1.2 等价类测试的类型 56
5.1.3 等价类测试的原则 57
5.1.4 等价类方法测试用例设计举例 57
5.2 边界值分析 59
5.2.1 边界值分析的概念 59
5.2.2 选择测试用例的原则 59
5.2.3 边界值方法测试用例设计举例 59
5.3 基于判定表的测试 60
5.3.1 判定表的概念 60
5.3.2 基于判定表的测试用例设计举例 60
5.4 基于因果图的测试 61
5.4.1 因果图的适用范围 61
5.4.2 用因果图生成测试用例 61
5.4.3 因果图法测试用例设计举例 61
5.5 基于状态图的测试 62
5.5.1 功能图及其符号 62
5.5.2 功能图法设计测试用例举例 62
5.6 基于场景的测试 64
5.6.1 基本流和备选流 64
5.6.2 场景法设计测试用例举例 65
5.7 其他黑盒测试用例设计技术 65
5.7.1 规范（规格）导出法 65
5.7.2 内部边界值测试法 65
5.7.3 错误猜测法 66
5.7.4 基于接口的测试 66
5.7.5 基于故障的测试 66
5.7.6 基于风险的测试 66
5.7.7 比较测试 66
5.8 典型考题分析 67
5.9 过关必备 70
第6章 单元测试和集成测试 73
6.1 单元测试的基本概念 73
6.1.1 单元测试的定义和目标 73
6.1.2 单元测试与集成测试、系统测试的区别 74
6.1.3 单元测试环境 74
6.2 单元测试策略 75
6.2.1 自顶向下的单元测试策略 75
6.2.2 自底向上的单元测试策略 75
6.2.3 孤立测试 75
6.2.4 综合测试 75
6.3 单元测试分析 75
6.4 单元测试的测试用例设计原则 76
6.4.1 单元测试的测试用例设计步骤 76
6.4.2 单元测试中的白盒测试与黑盒测试 77
6.5 集成测试的基本概念 77
6.5.1 集成测试的定义 77
6.5.2 集成测试与系统测试的区别 77
6.5.3 集成测试与开发的关系 78
6.5.4 集成测试重点 78
6.5.5 集成测试层次 78
6.5.6 集成测试环境 78
6.6 集成测试的策略 79
6.6.1 基于分解的集成策略 79
6.6.2 基于功能的集成 80
6.6.3 基于调用图的集成 80
6.6.4 基于路径的集成 80
6.6.5 基于进度的集成 80
6.6.6 基于风险的集成 80
6.7 集成测试分析 80
6.7.1 体系结构分析 80
6.7.2 模块分析 81
6.7.3 接口分析 81
6.7.4 可测试性分析 81
6.7.5 集成测试策略的分析 81
6.7.6 常见的集成测试故障 81
6.8 集成测试的测试用例设计 82
6.9 典型考题分析 82
6.10 过关必备 84
第7章 系统测试 86
7.1 系统测试概念 86
7.1.1 什么是系统测试 86
7.1.2 系统测试与单元测试、集成测试的区别 86
7.1.3 集成测试的组织和分工 87
7.1.4 系统测试分析 87
7.1.5 系统测试环境 87
7.2 系统测试的方法 87
7.2.1 功能测试 87
7.2.2 协议测试 88
7.2.3 性能测试 88
7.2.4 压力测试 88
7.2.5 容量测试 88
7.2.6 安全性测试 88
7.2.7 失效恢复测试 89
7.2.8 备份测试 89
7.2.9 GUI测试 89
7.2.10 健壮性测试 89
7.2.11 兼容性测试 90
7.2.12 易用性测试 90
7.2.13 安装测试 90
7.2.14 文档测试 90
7.2.15 在线帮助测试 90
7.2.16 数据转换测试 90
7.3 系统测试的实施 91
7.3.1 确认测试 91
7.3.2 α测试和β测试 91
7.3.3 验收测试 91
7.3.4 回归测试 92
7.3.5 系统测试问题总结、分析 92
7.4 如何做好系统测试 92
7.5 典型考题分析 92
7.6 过关必备 94
第8章 软件性能测试和可靠性测试 97
8.1 软件性能测试的基本概念 97
8.1.1 什么是软件性能 97
8.1.2 软件性能的测试 99
8.2 软件性能测试的执行 99
8.2.1 性能测试的过程与组织 99
8.2.2 性能分析 100
8.2.3 性能测试的自动化 100
8.3 软件可靠性的概念 100
8.3.1 错误、缺陷、故障和失效 101
8.3.2 软件可靠性定义 101
8.3.3 软件可靠性指标 101
8.3.4 软件可靠性与硬件可靠性的区别 101
8.4 软件可靠性测试的执行 102
8.4.1 软件可靠性测试的过程 102
8.4.2 软件可靠性预测 102
8.5 软件可靠性分析方法 102
8.6 典型考题分析 103
8.7 过关必备 106
第9章 面向对象软件的测试 108
9.1 面向对象软件测试的问题 108
9.1.1 面向对象的基本特点引起的测试问题 108
9.1.2 面向对象程序的测试组织问题 109
9.2 面向对象软件的测试模型及策略 109
9.2.1 面向对象软件的测试模型 110
9.2.2 面向对象分析的测试 110
9.2.3 面向对象设计的测试 110
9.2.4 面向对象编程的测试 110
9.2.5 面向对象程序的单元测试 111
9.2.6 面向对象程序的集成测试 111
9.2.7 面向对象软件的系统测试 111
9.3 面向对象程序的单元测试 112
9.3.1 方法层次的测试 112
9.3.2 类层次的测试 112
9.3.3 类树层次的测试 112
9.4 面向对象程序的集成测试 113
9.4.1 面向对象程序的集成测试策略 113
9.4.2 针对类间连接的测试 114
9.5 面向对象软件的系统测试 115
9.5.1 功能测试 115
9.5.2 其他系统测试 115
9.6 典型考题分析 115
9.7 过关必备 118
第10章 Web应用软件测试 120
10.1 Web应用软件 120
10.1.1 Web应用软件的概念 120
10.1.2 Web应用软件的特点 120
10.1.3 Web应用软件的基本结构 121
10.1.4 Web应用软件的常用开发技术 121
10.2 应用服务器的分类和特征 121
10.2.1 三层和多层体系结构 121
10.2.2 应用服务器的分类 122
10.2.3 应用服务器对Web应用软件测试的影响 122
10.3 Web应用软件的测试策略 122
10.3.1 表示层的测试 123
10.3.2 业务层的测试 123
10.3.3 数据层的测试 123
10.3.4 层间的集成测试 123
10.4 Web应用软件的系统测试技术 124
10.4.1 功能测试 124
10.4.2 性能测试 125
10.4.3 易用性测试 125
10.4.4 内容测试 125
10.4.5 安全性测试 125
10.4.6 接口测试 126
10.5 Web应用软件的系统安全检测与防护 126
10.5.1 入侵检测 126
10.5.2 漏洞扫描 127
10.5.3 安全策略 127
10.6 典型考题分析 127
10.7 过关必备 129
第11章 其他测试 131
11.1 兼容性测试 131
11.1.1 硬件兼容性测试 131
11.1.2 软件兼容性测试 131
11.1.3 数据兼容性测试 132
11.2 易用性测试 132
11.2.1 易安装性测试 132
11.2.2 功能易用性测试 133
11.2.3 用户界面测试 133
11.3 构件测试 133
11.3.1 与测试相关的构件特性 133
11.3.2 构件测试的主要困难 134
11.3.3 构件测试涉及的人员 134
11.3.4 构件测试的常用方法 134
11.4 极限测试 134
11.4.1 极限编程基础 135
11.4.2 极限测试 135
11.5 文档测试 136
11.5.1 文档测试的范围 136
11.5.2 用户文档的内容 136
11.5.3 用户文档的测试 136
11.6 典型考题分析 137
11.7 过关必备 139
第12章 软件测试过程和管理 141
12.1 软件测试过程 141
12.1.1 测试过程的概念 141
12.1.2 测试过程的抽象模型 141
12.1.3 测试阶段中的测试活动 142
12.2 测试过程组织与管理 143
12.2.1 软件测试过程管理的特点 143
12.2.2 软件测试过程管理的原则 143
12.2.3 软件测试过程的人员组织 144
12.3 测试计划的制定 144
12.3.1 测试计划的整体目标 144
12.3.2 定义软件测试项目的标准 144
12.3.3 测试实施策略的制定 145
12.3.4 测试计划活动的细分 145
12.3.5 测试计划的要点 145
12.3.6 编制测试计划的技巧 146
12.4 测试方案的确定 146
12.4.1 软件测试设计和开发主要内容 146
12.4.2 软件测试设计要点 146
12.4.3 测试用例的设计方法 146
12.4.4 测试用例的管理 147
12.4.5 测试开发 147
12.5 测试环境管理 147
12.5.1 测试环境的定义 148
12.5.2 测试环境是测试的基础 148
12.5.3 测试环境的各要素 148
12.6 测试执行的管理 149
12.6.1 测试用例执行的跟踪 149
12.6.2 缺陷的跟踪和管理 149
12.6.3 与项目组外部人员的沟通 149
12.6.4 测试执行结束 150
12.7 测试质量分析 150
12.7.1 评估系统测试的覆盖程度 150
12.7.2 软件缺陷分析方法 151
12.8 测试文档管理 151
12.8.1 测试文档的分类管理 151
12.8.2 测试文档的存储和共享 152
12.8.3 文档模板 152
12.9 测试的复用与维护 152
12.9.1 测试过程的复用与维护 152
12.9.2 测试用例和软件缺陷报告的复用 153
12.10 典型考题分析 153
12.11 过关必备 155
第13章 软件自动化测试 157
13.1 自动化测试的原理与方法 157
13.2 自动化测试的限制 157
13.3 自动化测试用例的生成 158
13.3.1 脚本的作用、质量和编写原则 158
13.3.2 脚本的基本结构 158
13.4 测试执行自动化 159
13.4.1 前处理 159
13.4.2 后处理 159
13.4.3 自动化测试过程 160
13.5 测试结果比较自动化 160
13.5.1 自动比较的基本概念 160
13.5.2 动态比较 161
13.5.3 执行后比较 161
13.6 测试工具的分类与选择 162
13.6.1 测试工具的分类 162
13.6.2 测试工具的选择 162
13.7 测试工具的主流产品介绍 163
13.7.1 面向开发的单元测试工具 163
13.7.2 负载和性能测试工具 164
13.7.3 GUI功能测试工具 164
13.7.4 基于Web应用的测试工具 164
13.7.5 软件测试管理和其他工具 164
13.7.6 其他测试工具 165
13.8 典型考题分析 165
13.9 过关必备 165
第14章 软件测试的标准和文档 168
14.1 软件测试的标准 168
14.1.1 软件测试规范 168
14.1.2 软件测试文档编制规范 169
14.2 典型考题分析 170
14.3 过关必备 171
第15章 软件测试实践 173
15.1 软件测试过程管理实践 173
15.1.1 测试的策划 173
15.1.2 测试的设计 174
15.1.3 测试的执行 175
15.1.4 软件缺陷（问题）报告和软件缺陷（问题）生命周期 175
15.1.5 测试的总结 176
15.1.6 测试过程的质量控制 177
15.1.7 QESuite软件测试过程管理平台 177
15.2 白盒测试实践 181
15.2.1 QESAT/C简介 181
15.2.2 静态分析 181
15.2.3 动态测试 181
15.3 典型考题分析 182
15.4 过关必备 184
附录A 课后习题参考答案 186
附录B 样题及解析 191
B.1 样题一 191
B.2 样题二 195
B.3 样题三 200
B.4 样题一答案解析 203
B.5 样题二答案解析 206
B.6 样题三答案解析 210
附录C 历年真题及解析 216
C.1 2010年3月笔试真题 216
C.2 2009年9月笔试真题 221
C.3 2009年3月笔试真题 226
C.4 2010年3月笔试真题解析 232
C.5 2009年9月笔试真题解析 236
C.6 2009年3月笔试真题解析 243