软件测试教程(第2版)
作者 : 宫云战 主编  赵瑞莲 张威 王雅文 等编著
出版日期 : 2016-06-15
ISBN : 978-7-111-53270-5
适用人群 : 1.高等院校计算机专业本科生、研究生教材。2.软件开发
定价 : 45.00元
教辅资源下载
扩展信息
语种 : 简体中文
页数 : 294
开本 : 16
原书名 :
原出版社:
属性分类: 教材
包含CD :
绝版 :
图书简介

本书系统介绍了软件测试的基本原理和常用方法,同时阐述了近几年出现的一些新的软件测试方法,基本上涵盖了当今软件测试技术的全部内容。主要内容包括:软件测试概述、黑盒测试、白盒测试、基于缺陷模式的软件测试、集成测试、系统测试、软件审评和测试管理。本书结合实例,介绍了多种目前比较流行的软件测试工具,并将它们合理地融合在每一章中。根据软件测试行业的进展,进行了细节修订,并添加了“单元测试”“专用应用系统测试”“软件质量和质量保证”章节,最后增加了附录“测试用例的模板以及常见测试报告的模板”便于实际操作中的应用。本书可作为高等院校计算机专业本科生、研究生的教材,也可作为从事软件测试与软件质量保障工程师的参考书。

图书特色

本书根据第1版进行了全面升级,不仅系统地介绍了软件测试的基本原理和一般方法,而且阐述近几年出现的一些新的软件测试方法,并结合实例介绍了目前比较流行的软件测试工具,基本上涵盖了当今软件测试技术的全部内容。软件测试工具是结合软件测试技术来撰写的,并融合在每一章中。
本书特色:
取材丰富。涵盖了软件测试领域国内外主流教材的内容。
形象生动。在写作方法上循序渐进,深入浅出;在概念的引入上尽力采用通俗化的语言和形象化的表达方式。
实用性强。精选了大量案例来讲解方法论。
适应面广。既适合作为本科生的教材,也适合作为研究生的教材。
本书为教师配有电子课件,有需要的教师可联系“教学支持联系人”获取。

图书前言

4年前,宫云战教授和赵瑞莲教授分别写过一本名为《软件测试》的书。同4年前相比,软件测试技术与软件产业得到了快速发展,主要表现在:社会对其认识更加深刻、需求增大;我国的软件评测企业大幅度增加,目前已有近2 000家,各个行业、各个省、发达地区的各个市都建立了软件评测中心;软件测试从业人员已达10数万人,我国软件测试产业产值已经达到上百亿元;国际上的IT巨头,如IBM、微软等,都在从事与软件测试相关的工作,众多的IT企业都在中国建立了软件测试外包为主导的软件企业;以软件测试工具和软件测试服务为核心的软件测试产业每年都在以超过20%速度递增;软件测试学术活动异常活跃,新的测试方法和测试工具不断出现。相比之下,原来书中有些内容虽然理论性强,但实用价值不大,而有些内容则处于被淘汰阶段。所有这些因素都促使我们认为有必要重新撰写本书。
本书叙述软件测试的一般原理和各种基本方法,包括基本的白盒测试、黑盒测试和集成测试方法,并结合近几年软件测试技术的发展,重点介绍了目前国际上一些比较流行的软件测试方法与软件测试工具,包括:
1)面向缺陷模式的软件测试技术:该技术以其缺陷检测效率高、准确,自动化程度高、易学等特点,在过去的几年中得到迅速发展,目前大约有80多个与该技术相关的工具。在美国,以该工具为基础的软件测试服务取得了很大的成功,成为美国一种主流软件测试技术。目前,随着缺陷模式的不断增加,该技术将有更广阔的应用前景。本书叙述了该技术的一般方法以及作者应用该技术开发的一款软件测试系统—缺陷测试系统(DTS)。
2)软件评审:软件评审发现缺陷的效率高且比较经济,是目前常用的提高软件质量的方法,已在许多大型软件开发中得到了印证。本书详细叙述了软件评审的内容及如何组织软件评审。
3)随着软件开发规模的扩大、复杂程度的增加,为了尽可能多地找出程序中的故障,开发出高质量的软件产品,必须对测试工作进行组织策划和有效管理,并采取系统的方法建立起软件测试管理体系。通过它们对测试活动进行监管和控制,以确保软件测试在软件质量保证中发挥应有的关键作用。
4)软件测试工具是提高软件测试效率与质量的重要手段,在过去的几年中,在软件开发过程的各个阶段,产生了大量的软件测试工具,一些新技术的使用,也使得软件测试工具的自动化程度得到了大幅度的提高。本书介绍了目前多种主流的软件测试工具。
5)近几年来,随着IT的发展,与软件系统交互的相关技术也越来越多,包括网络、协议、安全性、界面等,所有这些方面都需要测试,而这些测试和基本的软件测试是不同的。本书全面论述了软件系统以及与此相关的系统测试。
赵瑞莲教授编写了本书的第1、2、8章,赵会群教授编写了第6章,张威教授、万琳副教授编写了第3、5、7章,杨朝红博士编写了第4章,全书由宫云战教授统稿、审查。
限于作者的水平,书中对某些问题的论述可能是肤浅的,也可能存在错误,恳请读者批评指正。

宫云战
2008年5月4日于北京

上架指导

计算机\软件工程

封底文字

本书根据第1版进行了全升级,不仅系统地介绍了软件测试的基本原理和一般方法,而且阐述近几年出现的一些新的软件测试方法,结合实例,介绍了目前比较流行的软件测试工具。基本上涵盖了当今软件测试技术的全部内容,软件测试工具是结合软件测试技术来撰写的,并融合在每一个章节中。
本书特色:
取材丰富。涵盖了软件测试领域国内外主流教材的内容。
形象生动。在写作方法上循序渐进,深入浅出,在概念的引入上尽力采用通俗化的语言和形象化的表达方式。
实用性强。精选了大量案例来讲解方法论。
适应面广。既适合作为本科生的教材,也适合作为研究生的教材。
本书为教师配有电子课件,有需要的教师可联系“教学支持联系人”获取。

图书目录

教学建议
再版说明
第1版序
第1版前言
第1章 软件测试概述1
1.1 计算机系统的软件可靠性问题1
1.2 软件测试的概念3
1.2.1 软件测试的定义3
1.2.2 测试用例4
1.2.3 软件测试的基本原则5
1.2.4 软件测试从业人员要求5
1.3 软件测试过程6
1.4 软件测试与软件开发的关系10
1.4.1 软件开发过程10
1.4.2 软件测试在软件开发中的作用11
1.4.3 软件测试过程模型11
1.4.4 软件测试环境的搭建14
1.5 软件测试的发展历程和现状15
1.6 我国软件测试产业现状18
1.7 软件测试工具19
习题22
第2章 软件缺陷23
2.1 软件缺陷概述23
2.1.1 软件缺陷的定义23
2.1.2 软件缺陷分析24
2.1.3 软件缺陷的种类24
2.1.4 软件缺陷的产生25
2.1.5 软件缺陷数目估计26
2.1.6 软件测试效率分析29
2.2 软件缺陷管理31
2.2.1 缺陷管理的目标31
2.2.2 缺陷报告32
2.2.3 软件缺陷管理流程33
2.2.4 缺陷管理工具35
习题37
第3章 黑盒测试38
3.1 黑盒测试的基本概念38
3.2 等价类划分法39
3.2.1 等价类划分法的原理39
3.2.2 等价类划分法的测试运用41
3.3 边界值分析法45
3.3.1 边界值分析法的原理45
3.3.2 边界值分析法的测试运用46
3.4 因果图法48
3.4.1 因果图法的原理49
3.4.2 因果图法的测试运用 50
3.5 决策表法52
3.5.1 决策表法的原理52
3.5.2 决策表法的测试运用53
3.6 黑盒测试方法的比较与选择56
3.7 黑盒测试工具介绍57
3.7.1 黑盒测试工具概要 57
3.7.2 黑盒功能测试工具—QTP58
3.7.3 黑盒功能测试工具—Selenium61
3.7.4 其他常用功能测试工具64
习题66
第4章 白盒测试67
4.1 控制流测试67
4.1.1 基本概念67
4.1.2 控制流覆盖准则69
4.2 数据流测试75
4.2.1 基本概念75
4.2.2 数据流覆盖准则76
4.3 代码审查77
4.3.1 代码审查的意义77
4.3.2 代码审查的内容78
4.3.3 代码审查的过程80
4.4 代码走查81
4.4.1 代码走查的意义81
4.4.2 代码走查小组的组成81
4.4.3 代码走查的过程82
4.5 程序变异测试82
4.5.1 程序强变异测试82
4.5.2 程序弱变异测试84
4.6 白盒测试工具85
4.6.1 Emma85
4.6.2 C++test91
4.6.3 JUnit95
4.6.4 Testbed96
4.7 单元测试工具CTS98
习题103
第5章 基于缺陷模式的软件测试105
5.1 基于缺陷模式的软件测试概述105
5.2 基于缺陷模式的软件测试指标分析106
5.3 缺陷模式107
5.3.1 缺陷模式概述107
5.3.2 故障模式107
5.3.3 安全漏洞模式126
5.3.4 缺陷模式143
5.3.5 规则模式149
5.4 软件缺陷检测系统(DTS)149
5.4.1 DTS系统结构149
5.4.2 DTS缺陷模式描述150
5.4.3 DTS的测试界面152
5.4.4 DTS测试应用报告152
习题153
第6章 集成测试154
6.1 集成测试概述154
6.1.1 集成测试的概念154
6.1.2 集成测试与系统测试的区别155
6.1.3 集成测试与开发的关系156
6.1.4 集成测试的层次与原则156
6.2 集成测试策略157
6.2.1 非渐增式集成157
6.2.2 渐增式集成158
6.2.3 三明治集成161
6.3 集成测试用例设计161
6.4 集成测试过程163
6.5 面向对象的集成测试165
6.5.1 对象交互165
6.5.2 面向对象集成测试的常用方法166
6.5.3 分布式对象测试167
习题168
第7章 系统测试169
7.1 性能测试169
7.1.1 性能测试方法169
7.1.2 性能测试执行170
7.1.3 性能测试案例分析171
7.2 压力测试174
7.2.1 压力测试方法175
7.2.2 压力测试执行176
7.3 容量测试176
7.3.1 容量测试方法177
7.3.2 容量测试执行178
7.3.3 容量测试案例分析178
7.4 健壮性测试180
7.4.1 健壮性测试评价180
7.4.2 健壮性测试案例分析181
7.5 安全性测试181
7.5.1 安全性测试方法182
7.5.2 安全性测试案例分析187
7.6 可靠性测试189
7.6.1 可靠性测试的基本概念190
7.6.2 软件的运行剖面193
7.6.3 可靠性测试案例分析197
7.7 恢复性测试与备份测试199
7.8 协议一致性测试200
7.8.1 协议一致性测试基本概念200
7.8.2 协议一致性测试方法201
7.9 兼容性测试205
7.10 安装测试205
7.11 可用性测试206
7.11.1 可用性测试的概念206
7.11.2 可用性测试方法207
7.12 配置测试208
7.12.1 配置测试的概念208
7.12.2 配置测试方法208
7.13 文档测试209
7.13.1 文档测试的概念209
7.13.2 文档测试方法210
7.14 GUI测试212
7.14.1 GUI测试的概念及方法212
7.14.2 GUI测试案例分析214
7.15 回归测试215
7.15.1 回归测试的概念215
7.15.2 回归测试方法215
7.16 系统测试工具及其应用216
7.16.1 LoadRunner216
7.16.2 TTworkbench219
7.16.3 QACenter219
7.16.4 DataFactory220
7.16.5 JMeter220
习题224
第8章 主流信息应用系统测试226
8.1 Web应用系统测试226
8.1.1 Web系统基本组成226
8.1.2 Web应用系统测试综述227
8.1.3 Web应用系统测试的实施228
8.2 数据库测试231
8.2.1 数据库测试概述231
8.2.2 数据库功能性测试232
8.2.3 数据库性能测试与原因分析233
8.2.4 数据库可靠性及安全性测试235
8.3 嵌入式系统测试236
8.3.1 嵌入式软件测试策略及测试流程236
8.3.2 嵌入式软件测试代表工具237
8.4 游戏测试238
8.4.1 游戏开发与测试过程239
8.4.2 游戏测试主要内容240
8.4.3 游戏测试的实施241
8.5 移动应用软件测试242
8.5.1 移动应用测试的困难243
8.5.2 测试类型244
8.5.3 移动应用测试工具245
8.6 云应用软件测试245
8.6.1 云测试基本概念245
8.6.2 云测试方法和技术246
8.6.3 云测试现状及挑战247
习题248
第9章 软件评审249
9.1 软件评审概述249
9.2 需求评审250
9.3 概要设计评审253
9.4 详细设计评审254
9.5 数据库设计评审255
9.6 测试评审255
习题258
第10章 测试管理259
10.1 建立测试管理体系259
10.2 测试管理的基本内容260
10.2.1 测试组织管理260
10.2.2 测试过程管理261
10.2.3 资源和配置管理263
10.2.4 测试文档管理263
10.3 测试管理的原则265
10.4 测试管理实践267
10.5 常用的测试管理工具268
10.5.1 TestDirector测试管理工具268
10.5.2 JIRA介绍 270
10.5.3 国外其他测试管理工具272
10.5.4 国产测试管理工具KTFlow274
习题276
附录A 测试用例样式277
附录B 测试报告样式279
参考文献280
参考网站284

教学资源推荐
作者: 厦门大学 杜朝运