《软件测试与质量保证 理论与实践》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:(加)奈克,(美)特里帕蒂著;郁莲等译
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2013
  • ISBN:9787121190131
  • 页数:408 页
图书介绍:本书是有关软件测试与质量保证的一本理想入门教材,本书共分18章,主要内容包括测试的基本概念、程序测试理论、单元测试、控制流测试、数据流测试、域测试、系统集成测试、系统测试分类、功能测试、从有限状态机模型生成测试、系统测试设计、系统测试计划与自动化、系统测试的执行、验收测试、软件可靠性、测试团队的组织结构、软件质量及成熟度模型等。

第1章 基本概念和预备知识 1

1.1 质量革命 1

1.2 软件质量 4

1.3 软件测试的作用 4

1.4 验证和确认 5

1.5 失败、错误、故障和缺陷 6

1.6 软件可靠性的概念 7

1.7 测试的目标 7

1.8 什么是测试用例 7

1.9 期望结果 8

1.10完备测试的概念 9

1.11测试的核心问题 9

1.12测试活动 9

1.13测试阶段 11

1.14测试用例选择的信息来源 12

1.15白盒测试与黑盒测试 13

1.16测试计划和设计 14

1.17监测并度量测试执行 15

1.18测试工具和自动化 16

1.19测试团队的组织和管理 17

1.20本书概述 18

参考文献 19

习题 21

第2章 程序测试理论 22

2.1 测试理论中的基本概念 22

2.2 Goodenough和Gerhart理论 22

2.2.1 基本概念 23

2.2.2 测试理论 24

2.2.3 程序错误 24

2.2.4 可靠性条件 25

2.2.5 理论的缺点 26

2.3 Weyuker和Ostrand理论 26

2.4 Gourlay理论 27

2.4.1 几个定义 28

2.4.2 测试方法的能力 29

2.5 测试的足够性 30

2.6 测试的局限性 31

2.7 总结 32

文献综述 33

参考文献 33

习题 34

第3章 单元测试 35

3.1 单元测试的概念 35

3.2 静态单元测试 36

3.3 缺陷预防 41

3.4 动态单元测试 42

3.5 变异测试 44

3.6 调试 46

3.7 极限编程中的单元测试 48

3.8 JUnit:单元测试框架 49

3.9 单元测试工具 52

3.10总结 55

文献综述 55

参考文献 57

习题 59

第4章 控制流测试 60

4.1 基本概念 60

4.2 控制流测试概述 60

4.3 控制流图 61

4.4 控制流图中的路径 64

4.5 路径选择标准 65

4.5.1 全路径覆盖原则 66

4.5.2 语句覆盖原则 66

4.5.3 分支覆盖原则 67

4.5.4 谓词覆盖原则 68

4.6 生成测试输入 69

4.7 选择测试数据的示例 73

4.8 包含无效路径 74

4.9 总结 74

文献综述 75

参考文献 75

习题 76

第5章 数据流测试 78

5.1 一般概念 78

5.2 数据流异常 78

5.3 动态数据流测试概述 80

5.4 数据流图 81

5.5 数据流术语 83

5.6 数据流测试标准 84

5.7 数据流测试选择标准的比较 86

5.8 可行路径和测试选择标准 87

5.9 测试技术的比较 89

5.10总结 90

文献综述 90

参考文献 92

习题 93

第6章 域测试 95

6.1 域错误 95

6.2 域错误测试 97

6.3 域的源 97

6.4 域错误的类型 99

6.5 ON点和OFF点 100

6.6 测试选择标准 102

6.7 总结 106

文献综述 107

参考文献 108

习题 108

第7章 系统集成测试 110

7.1 集成测试的概念 110

7.2 接口的不同类型和接口错误 111

7.3 系统集成测试的粒度 113

7.4 系统集成技术 113

7.4.1 增量法 114

7.4.2 自顶向下 116

7.4.3 自底向上 118

7.4.4 三明治方式和大爆炸方式 119

7.5 软件和硬件的集成 120

7.5.1 硬件设计验证测试 120

7.5.2 硬件/软件兼容性矩阵 122

7.6 系统集成的测试计划 124

7.7 现成组件集成 126

7.7.1 现成组件的测试 127

7.7.2 内置测试 128

7.8 总结 128

文献综述 129

参考文献 129

习题 130

第8章 系统测试分类 131

8.1 系统测试分类法 131

8.2 基础测试 132

8.2.1 启动测试 132

8.2.2 升级/降级测试 132

8.2.3 发光二极管测试 132

8.2.4 诊断程序测试 133

8.2.5 命令行界面测试 133

8.3 功能性测试 133

8.3.1 通信系统测试 134

8.3.2 模块测试 134

8.3.3 记录和跟踪测试 134

8.3.4 元素管理系统(EMS)测试 135

8.3.5 管理信息基础测试 137

8.3.6 图形用户界面测试 137

8.3.7 安全性测试 137

8.3.8 特征测试 138

8.4 健壮性测试 138

8.4.1 边界值测试 139

8.4.2 电力循环测试 140

8.4.3 在线插入和删除测试 140

8.4.4 高可用性测试 140

8.4.5 降级节点测试 140

8.5 互操作性测试 141

8.6 性能测试 141

8.7 可扩展性测试 142

8.8 压力测试 143

8.9 负载和稳定性测试 144

8.10可靠性测试 145

8.11回归测试 145

8.12文档测试 146

8.13规章测试 146

8.14总结 147

文献综述 148

参考文献 149

习题 149

第9章 功能测试 151

9.1 Howden的功能测试的概念 151

9.1.1 变量的不同类型 152

9.1.2 测试向量 156

9.1.3 在上下文中测试一个函数 157

9.2 应用功能测试的复杂度 157

9.3 成对测试 159

9.3.1 正交矩阵 159

9.3.2 参数顺序算法 162

9.4 等价类划分 164

9.5 边界值分析 167

9.6 判定表 167

9.7 随机测试 170

9.8 错误猜测 173

9.9 范畴划分 173

9.10总结 175

文献综述 176

参考文献 177

习题 178

第10章 从有限状态机模型生成测试 180

10.1 面向状态的模型 180

10.2 控制和观察点 182

10.3 有限状态机 183

10.4 从一个FSM中产生测试 185

10.5 迁移遍历方法 185

10.6 带有状态验证的测试 188

10.7 唯一输入-输出序列 189

10.8 区分序列 192

10.9 表征序列 195

10.10测试架构 197

10.10.1 本地架构 198

10.10.2 分布式架构 199

10.10.3 协调架构 199

10.10.4 远程架构 200

10.11测试和测试控制标记法第3版(TTCN-3) 200

10.11.1 模块 200

10.11.2 数据声明 201

10.11.3 端口及组件 202

10.11.4 测试用例裁定 203

10.11.5 测试用例 203

10.12扩展的有限状态机 205

10.13从EFSM模型中生成测试用例 209

10.14为系统测试增加的覆盖标准 213

10.15总结 215

文献综述 215

参考文献 216

习题 217

第11章 系统测试设计 219

11.1 测试设计要点 219

11.2 需求识别 220

11.3 可测需求的特征 225

11.4 测试目标识别 227

11.5 示例 228

11.6 建立测试设计流程模型 235

11.7 建立测试结果模型 236

11.8 测试设计准备度量 238

11.9 测试用例设计有效性 238

11.10总结 239

文献综述 239

参考文献 240

习题 241

第12章 系统测试计划与自动化 242

12.1 系统测试计划的结构 242

12.2 导言与特征描述 243

12.3 假设前提 243

12.4 测试方法 243

12.5 测试套件结构 243

12.6 测试环境 244

12.7 测试执行策略 245

12.7.1 多周期系统测试策略 246

12.7.2 测试周期特性 247

12.7.3 首次测试周期的准备 249

12.7.4 最终测试周期的测试用例选择 251

12.7.5 测试用例优先级排序 252

12.7.6 三个测试周期的细节 253

12.8 测试工作量评估 256

12.8.1 测试用例数量 257

12.8.2 创建测试用例工作量 261

12.8.3 测试用例执行工作量 261

12.9 安排进度与测试里程碑 262

12.10系统测试自动化 266

12.11评价和选择自动化测试工具 266

12.12自动化测试选择指南 268

12.13自动化测试用例的特性 269

12.14自动化测试用例的结构 270

12.15测试自动化的基础设施 271

12.16总结 272

文献综述 273

参考文献 275

习题 276

第13章 系统测试的执行 277

13.1 基本观点 277

13.2 缺陷建模 277

13.3 系统测试开始前的准备工作 282

13.4 跟踪系统测试的度量指标 285

13.4.1 监测测试用例执行的度量指标 285

13.4.2 测试执行度量指标的示例 286

13.4.3 监测缺陷报告的度量指标 288

13.4.4 缺陷报告度量指标示例 289

13.5 正交缺陷分类 292

13.6 缺陷原因分析 294

13.7 beta测试 296

13.8 首次客户运送(FCS) 297

13.9 系统测试报告 298

13.10产品支持 299

13.11测量测试的有效性 300

13.12总结 302

文献综述 303

参考文献 303

习题 304

第14章 验收测试 306

14.1 验收测试的类型 306

14.2 验收标准 307

14.3 验收标准的选择 313

14.4 验收测试计划 313

14.5 验收测试的执行 314

14.6 验收测试报告 315

14.7 极限编程中的验收测试 316

14.8 总结 317

文献综述 317

参考文献 318

习题 318

第15章 软件可靠性 320

15.1 什么是可靠性 320

15.1.1 缺陷和故障 321

15.1.2 时间 321

15.1.3 故障之间的时间间隔 322

15.1.4 在周期性时间间隔中的故障计数 322

15.1.5 故障密度 323

15.2 软件可靠性的定义 324

15.2.1 软件可靠性的第一个定义 324

15.2.2 软件可靠性的第二个定义 325

15.2.3 比较软件可靠性的定义 325

15.3 影响软件可靠性的因素 325

15.4 软件可靠性的应用 326

15.4.1 比较软件工程技术 326

15.4.2 衡量系统测试的进度 326

15.4.3 控制运行中的系统 327

15.4.4 深入洞察软件开发过程 327

15.5 操作概要 327

15.5.1 操作 327

15.5.2 操作概要的表示 327

15.6 可靠性模型 329

15.7 总结 333

文献综述 334

参考文献 335

习题 335

第16章 测试团队的组织结构 337

16.1 测试团队 337

16.1.1 集成测试组 337

16.1.2 系统测试组 337

16.2 软件质量保证组 338

16.3 系统测试团队的组织结构 339

16.4 有效的测试工程师人员编制 340

16.5 招聘测试工程师 342

16.5.1 职位需求 342

16.5.2 职位概要 342

16.5.3 浏览简历 343

16.5.4 协调面试团队 343

16.5.5 面试 344

16.5.6 决策 347

16.6 保留测试工程师 347

16.6.1 职业前景 347

16.6.2 培训 347

16.6.3 奖励制度 348

16.7 团队建设 348

16.7.1 期望 348

16.7.2 一致性 348

16.7.3 信息共享 349

16.7.4 标准化 349

16.7.5 测试环境 349

16.7.6 酬谢 349

16.8 总结 349

文献综述 350

参考文献 350

习题 351

第17章 软件质量 352

17.1 软件质量的5个观点 352

17.2 McCall的质量因子和标准 354

17.2.1 质量因子 354

17.2.2 质量标准 357

17.2.3 质量因子和质量标准之间的关系 358

17.2.4 质量度量 359

17.3 ISO 9126质量特性 359

17.4 ISO 9000:2000软件质量标准 361

17.4.1 ISO 9000:2000基本法则 362

17.4.2 ISO 9001:2000需求 363

17.5 总结 366

文献综述 367

参考文献 368

习题 368

第18章 成熟度模型 369

18.1 软件过程中的基本概念 369

18.2 能力成熟度模型 370

18.2.1 CMM架构 371

18.2.2 5个成熟度级别和核心过程领域 371

18.2.3 核心实践的公共特性 373

18.2.4 CMM应用 374

18.2.5 能力成熟度集成(CMMI) 374

18.3 测试过程改进 375

18.4 测试成熟度模型 383

18.5 总结 389

文献综述 390

参考文献 390

习题 391

术语表 392