
本书根据作者长年项目开发与工程验收等丰富的实践经验,以一个现实的电子政务基础平台系统的案例为线索,重点讲解了软件测试的理论、实践、管理知识,深入剖析和探讨了各种测试类型和不同阶段比较成熟的技术以及测试方法;全书包括单元测试、功能测试、网络测试、性能测试、集成测试、系统测试、验收测试、We测试、自动化测试、面向对象测试等内容。
本书面向软件测试的实际应用,从组建测试队伍,剖析各阶段的测试内容到通过实例讲解测试用例的组织、设计以及测试文档的编写、测试项目的管理。内容化繁为简,将抽象理论知识转化为可触摸的实际操作,达到更好地理解和消化理论的目的。
全书内容实用,讲述浅显易懂,既可作为高等院校软件测试课程的教材,也可作为软件测试人员的自学用书。对于那些希望强化软件测试技术的程序员、软件项目经理和软件开发团队的相关人员,本书也具有很好的参考价值。
本书分别从理论、实践、管理的角度介绍了当前软件测试行业所使用的技术,内容基于软件测试理论和软件测试技术展开,覆盖面广,基本上反映了当前软件测试行业所用的所有技术,是编著者长期从事软件信息工程测试监理的经验总结。
软件测试人员不仅需要掌握软件测试的基本概念和测试技术,还需要具备以下能力:编制测试大纲、测试计划,设计测试用例,撰写测试文档:因为后者是独立承担、实施项目测试的基础,本书对此也结合案例进行了详细全面的描述。
图书内容
本书在内容上可划分为软件测试理论、软件测试实践、测试文档编写、软件测试管理4大部分。
在软件测试理论部分,介绍了软件测试的基础知识、软件测试的质量要求、白盒测试技术、黑盒测试技术、单元测试技术、功能测试技术、网络测试和软件安装测试技术、性能测试技术、集成测试技术、系统测试技术、验收测试技术等。
在软件测试实践部分,介绍了软件缺陷测试、测试评估及测试用例设计,并提供了如下实例:
? 界面测试用例设计实例。
? 登录、添加、删除、查询模块测试用例设计实例。
? 宽带接入网网络管理系统测试用例设计实例。
? 某部电子政务应用平台测试用例设计实例。
? 电子政务应用平台主页功能测试用例设计实例。
在测试文档编写部分介绍了11类测试文档的写作内容和写作方法:测试需求说明书、测试任务说明书、测试计划说明书、测试大纲写作、测试用例写作、测试分析报告、程序错误报告、集成测试报告、单元测试报告、系统测试报告、验收测试报告。
在软件测试管理部分介绍了测试项目管理、测试过程管理、组织和人员管理、软件配置管理、软件缺陷管理、变更请求管理、进度管理、风险管理、成本管理等。
学习目标
通过本书的学习,读者可以掌握软件测试的基本概念;掌握软件测试的相关技术、工具、方法;掌握关键实施技巧的技术、方法:具有独立承担、实施测试项目的能力。
图书特点
? 内容系统全面、重点突出。
? 叙述由浅入深、循序渐进。
? 概念清楚易懂、案例实用性强。
? 案例、文档模板拿来就用。
目标读者
? 软件测试技术人员。
? 高等院校软件工程专业师生。
? 软件工程专业的技术人员。
? 软件质量管理人员。
? 软件监理人员。
本书是在软件信息工程监理的基础上,参考了大量的技术资料、书籍、文章,并且引用了部分书籍、文章里的图表编写而成的,同时书中还饱含与同行交流的心得体会,写作过程中也得到了许多热心朋友的支持和帮助,在此对所有帮助、鼓励过本人完成此书的朋友表示衷心的感谢;同时由于图书篇幅所限,引用的文献名称和作者就不再一一列出,借此机会一并表示感谢!
本书由黎连业、王华、李淑春编写,并且张宜、黎长骏、张维、单银根、陈建华、王月冬、黎娜、黎军等同志也参与了部分章节的编写工作并提出了许多有益的建议,同时王安、金陆.、段兆金等同志为本书的写作提供了许多技术资料。
由于作者水平有限,书中难免存在疏漏和错误之处,恳请专家和广大读者批评指正。在学习过程中,遇到疑难问题,可以通过以下方式与我们联系:booksaga@126.com,也可以登录图格新知网站http://www,booksaga.com留言,我们将在第一时间给予答复!
黎连业
2009.04
第 1章软件测试概述 1
1.1
软件的基础知识概述 .........................................................................................................1
1.1.1
软件的概念、特点和分类 .....................................................................................1
1.1.2
软件工程的定义、内容、目标、问题 ..................................................................3
1.1.3
软件生存周期及其模型 .........................................................................................5
1.1.4
软件开发方法 .......................................................................................................12
1.1.5
软件生存周期过程 ...............................................................................................15
1.1.6
软件工程标准 .......................................................................................................18
1.1.7
软件开发文档 .......................................................................................................20
1.1.8
软件质量保证 .......................................................................................................20
1.2
软件测试的概念、方法和任务 .......................................................................................26
1.2.1
软件测试的概念 ...................................................................................................26
1.2.2
软件测试的方法 ...................................................................................................34
1.2.3
软件测试的任务 ...................................................................................................36
1.3
软件测试的术语定义 .......................................................................................................36
1.4
软件测试的人员要求 .......................................................................................................44
1.4.1
系统测试人员的结构 ...........................................................................................44
1.4.2
软件测试人员需要的知识 ...................................................................................45
1.4.3
软件测试人员需要的素质 ...................................................................................45
1.4.4
软件测试人员的职责 ...........................................................................................46
1.5
软件测试的前景 ...............................................................................................................46
第 2章软件测试的质量要求 48
2.1
软件测试的成熟度模型 ...................................................................................................48
2.2
软件测试的流程图 ...........................................................................................................55
2.3
软件测试的流程细则 .......................................................................................................58
3.1白盒测试的基本概念 .......................................................................................................61
3.2
白盒测试的依据和流程 ...................................................................................................62
3.3
白盒测试的方法 ...............................................................................................................63
3.3.1
代码检查法 ...........................................................................................................63
3.3.2
静态结构分析法 ...................................................................................................64
3.3.3
静态质量度量法 ...................................................................................................65
3.3.4
逻辑覆盖法 ...........................................................................................................65
3.3.5
基本路径测试法 ...................................................................................................68
3.3.6
域测试法 ...............................................................................................................70
3.3.7
符号测试法 ...........................................................................................................70
3.3.8
Z路径覆盖法 ........................................................................................................70
3.3.9
程序变异测试法 ...................................................................................................70
3.4
白盒测试的要求 ...............................................................................................................71
3.4.1
软件各层公用问题测试的要求 ............................................................................71
3.4.2
Java语言测试的要求 ...........................................................................................75
3.4.3
数据类型测试的要求 ...........................................................................................75
3.4.4
SQL语句测试的要求 ...........................................................................................75
3.4.5
界面测试的要求 ...................................................................................................80
3.4.6
数值对象测试的要求 ...........................................................................................82
3.4.7
业务对象测试的要求 ...........................................................................................82
3.4.8
数据管理对象测试的要求 ...................................................................................83
3.5
白盒测试的工具 ...............................................................................................................83
3.5.1
代码测试工具 .......................................................................................................83
3.5.2
静态测试和静态测试工具 ...................................................................................87
3.5.3
动态测试和动态测试工具 ...................................................................................92
第 3章白盒测试技术 61 第 4章黑盒测试技术 95
4.1
黑盒测试的基本概念 .......................................................................................................95
4.1.1
黑盒测试的优点和缺点 .......................................................................................96
4.1.2
黑盒测试与白盒测试的比较 ...............................................................................96
4.2
黑盒测试的方法 ...............................................................................................................97
4.2.1
等价类划分方法 ...................................................................................................97
4.2.2
边界值分析方法 .................................................................................................100
4.2.3
错误推测方法 .....................................................................................................101
4.2.4
判定表驱动分析方法 .........................................................................................101
4.2.5
因果图方法 .........................................................................................................102
4.2.6
正交实验设计方法 .............................................................................................107
4.2.7
功能图分析方法 .................................................................................................108
4.2.8
场景设计方法 .....................................................................................................108
4.3
黑盒测试的工具 .............................................................................................................109
4.3.1
QACenter测试工具 ............................................................................................109
4.3.2
WinRunner测试工具 ..........................................................................................111
4.4
黑盒测试的操作步骤 .....................................................................................................112
第 5章软件测试模型和测试工作指南 113
5.1
软件测试工作概述 .........................................................................................................113
5.1.1
软件测试工作流程 .............................................................................................113
5.1.2
软件测试阶段 .....................................................................................................114
5.2
软件测试模型 .................................................................................................................115
5.2.1
V模型 .................................................................................................................115
5.2.2
W模型 ................................................................................................................116
5.2.3
H模型 .................................................................................................................117
5.2.4
X模型 .................................................................................................................117
5.3
软件测试工作指南 .........................................................................................................117
第 6章单元测试技术 119
6.1
单元测试的内容 .............................................................................................................119
6.2
单元测试的要点剖析 .....................................................................................................122
第 7章功能测试技术 124
7.1
功能测试概述 .................................................................................................................124
7.2
功能测试的流程 .............................................................................................................126
7.3
功能测试用例的书写内容 .............................................................................................128
第 8章网络测试和软件安装测试技术 130
8.1
网络产品的测试 .............................................................................................................130
8.1.1
防火墙产品测试 .................................................................................................131
8.1.2
入侵检测产品测试 .............................................................................................133
8.1.3
入侵防护测试 .....................................................................................................136
8.1.4
漏洞扫描测试 .....................................................................................................137
8.1.5
防病毒测试 .........................................................................................................138
8.1.6
交换机测试 .........................................................................................................140
8.1.7
服务器测试 .........................................................................................................142
8.2
网络本身的测试 .............................................................................................................143
8.2.1
网络测试的类型 .................................................................................................143
8.2.2
网络测试的内容 .................................................................................................146
8.2.3
网络测试的方式 .................................................................................................147
8.2.4
网络应用系统的测试 .........................................................................................147
8.2.5
网络性能测试的环境 .........................................................................................150
8.2.6
网络应用系统的测试阶段划分 ..........................................................................150
8.2.7
网络应用系统的主要测试设备 ..........................................................................151
8.3
软件安装的测试 .............................................................................................................152
8.3.1
共享软件安装测试 .............................................................................................152
8.3.2
用户应用系统软件安装测试 .............................................................................153
第 9章性能测试技术 155
9.1
性能测试概述 .................................................................................................................155
9.
1.1性能测试的分类 .................................................................................................155
9.1.2
性能测试的目的 .................................................................................................159
9.1.3
性能测试的指标 .................................................................................................159
9.1.4
性能测试的内容 .................................................................................................159
9.1.5
性能测试的策略 .................................................................................................159
9.1.6
性能测试的方法 .................................................................................................160
9.2
性能测试的实例剖析 .....................................................................................................161
9.2.1
并发性能测试剖析 .............................................................................................161
9.2.2
Web站点质量分析剖析 .....................................................................................162
9.2.3
应用故障定位剖析 .............................................................................................163
9.2.4
测试策略剖析 .....................................................................................................163
第 10章集成测试技术 167
10.
1集成测试概述 ...............................................................................................................167
10.1.1
集成测试过程 ...................................................................................................167
10.1.2
集成测试方法 ...................................................................................................168
10.
2集成测试阶段工作 .......................................................................................................171
第 11章系统测试技术174
11.
1系统测试的主要内容和测试类型 ...............................................................................174
11.
2系统测试的过程 ...........................................................................................................175
11.
3系统测试的结果分析 ...................................................................................................176
11.
4系统测试的文档资料 ...................................................................................................178
第 12章验收测试技术 180
12.
1验收测试的先决条件 ...................................................................................................180
12.
2验收测试的目的 ...........................................................................................................180
12.
3验收测试的内容 ...........................................................................................................181
第 13章 Web测试技术 182
13.1 Web的功能测试 ..........................................................................................................182
13.2
Web的性能测试 ..........................................................................................................184
13.3
Web的用户界面测试 ..................................................................................................185
13.4
Web的兼容性测试 ......................................................................................................187
13.5
Web的安全性测试 ......................................................................................................188
13.6
Web的接口测试 ..........................................................................................................188
第 14章自动化测试技术 190
14.
1自动化测试概述 ...........................................................................................................190
14.
2自动化测试技术 ...........................................................................................................193
14.
3自动化测试级别 ...........................................................................................................195
14.
4自动化测试框架 ...........................................................................................................196
14.
5自动化测试工具 ...........................................................................................................198
14.5.1
自动化测试工具的特征 ...................................................................................198
14.5.2
自动化测试工具的分类 ...................................................................................198
14.5.3
自动化测试工具的常用类型 ...........................................................................199
第 15章面向对象的测试技术 204
15.
1面向对象的测试概述 ...................................................................................................204
15.1.1
面向对象的基本概念 .......................................................................................204
15.1.2
类的特性 ...........................................................................................................205
15.1.3
面向对象的开发方法 .......................................................................................207
15.1.4
面向对象的模型 ...............................................................................................210
15.1.5
面向对象的设计 ...............................................................................................212
15.1.6
面向对象的测试内容 .......................................................................................213
15.1.7
面向对象的测试模型 .......................................................................................215
15.
2面向对象分析的测试 ...................................................................................................217
15.
3面向对象编程的测试 ...................................................................................................221
15.
4面向对象的单元测试 ...................................................................................................222
15.4.1
类的测试和测试要求 .......................................................................................222
15.4.2
类测试设计的方法 ...........................................................................................222
15.4.3
单元测试使用的方法 .......................................................................................224
15.
5面向对象的集成测试 ...................................................................................................225
15.5.1
面向对象集成测试的目的 ...............................................................................225
15.5.2
面向对象集成测试的策略 ...............................................................................226
15.5.3
面向对象集成测试的静态和动态测试 ............................................................226
15.5.4
面向对象集成测试的用例和测试过程 ............................................................227
15.5.5
面向对象集成测试的常见故障 ........................................................................229
15.
6面向对象的系统测试 ...................................................................................................230
15.
7面向对象软件的测试用例设计 ...................................................................................230
15.7.1
面向对象软件的测试用例设计原则 ................................................................230
15.7.2
面向对象软件的测试用例设计方法 ................................................................231
第 16章软件缺陷测试和测试评估 237
16.
1软件缺陷概述 ...............................................................................................................237
16.1.1
软件缺陷的定义 ...............................................................................................237
16.1.2
软件缺陷的特征 ...............................................................................................238
16.1.3
软件缺陷的类型 ...............................................................................................238
16.1.4
Bug状态............................................................................................................239
16.1.5
Bug的等级划分与优先级 ................................................................................239
16.1.6
软件缺陷的标识、种类和属性 ........................................................................240
16.1.7
缺陷的起源、来源和根源 ...............................................................................241
16.1.8
Bug记录............................................................................................................242
16.
2软件缺陷的生命周期 ...................................................................................................243
16.
3软件缺陷的跟踪管理 ...................................................................................................244
16.3.1
软件缺陷的测试报告 .......................................................................................244
16.3.2
软件缺陷的分离和重现 ...................................................................................246
16.3.3
软件缺陷的跟踪系统 .......................................................................................247
16.
4软件测试的评估 ...........................................................................................................248
16.4.1
测试覆盖评估 ...................................................................................................248
16.4.2
软件测试的质量评估 .......................................................................................250
16.4.3
软件测试的缺陷评估 .......................................................................................253
16.4.4
软件测试的性能评估 .......................................................................................255
第 17章测试用例设计和电子政务应用平台测试用例设计实例 257
17.
1测试用例的基本概念 ...................................................................................................257
17.1.1
测试用例概述 ...................................................................................................257
17.1.2
测试用例设计 ...................................................................................................259
17.
2界面测试用例设计实例 ...............................................................................................261
17.
3登录、添加、删除、查询模块测试用例设计实例 ...................................................272
17.
4宽带接入网网络管理系统测试用例设计实例 ...........................................................274
17.
5某部电子政务应用平台测试用例设计实例 ...............................................................279
17.5.1
主页信息发布测试用例设计实例 ....................................................................279
17.5.2
工作站设置测试用例设计实例 ........................................................................280
17.5.3
文件维护测试用例设计实例 ...........................................................................281
17.5.4
查询显示页面测试用例设计实例 ....................................................................282
17.5.5
数据传输测试用例设计实例 ...........................................................................282
17.5.6
个人信息通信工具测试用例设计实例 ............................................................283
17.5.7
公文管理测试用例设计实例 ...........................................................................283
17.5.8
修改文件和修改撰文单位测试用例设计实例 ................................................287
17.5.9
党、团、工会事务管理测试用例设计实例 ....................................................288
17.5.10
贺电事务管理测试用例设计实例 ..................................................................288
17.5.11
固定资产管理测试用例设计实例 ..................................................................289
17.5.12
会务管理测试用例设计实例 ..........................................................................290
17.5.13
领导日程管理测试用例设计实例 ..................................................................291
17.5.14
机构管理维护测试用例设计实例 ..................................................................291
17.5.15
代码维护和主题词分类测试用例设计实例 ..................................................292
17.5.16
公文流转测试用例设计实例 ..........................................................................293
17.5.17
测试用例设计实例 .................................................................................293
17.5.18
维护人员测试用例设计实例 ..........................................................................294
17.
6电子政务应用平台主页功能测试用例设计实例 .......................................................294
第 18章测试文档的写作 296
18.
1测试文档的写作概述 ...................................................................................................296
18.
2测试需求说明书写作的内容 .......................................................................................298
18.2.1
测试需求说明书的写作方法 ...........................................................................298
18.2.2
测试需求说明书的写作模板 ...........................................................................298
18.
3测试任务说明书写作的内容 .......................................................................................302
18.3.1
测试任务、测试质量和测试范围 ....................................................................302
18.3.2
确定测试进度和管理 .......................................................................................303
18.3.3
测试注意事项 ...................................................................................................304
18.
4测试计划说明书写作的内容 .......................................................................................304
18.
5测试大纲写作的内容 ...................................................................................................307
18.
6测试用例写作的内容 ...................................................................................................311
18.
7测试分析报告写作的内容 ...........................................................................................317
18.7.1
测试分析报告模板的 ...............................................................................317
18.7.2
测试分析报告模板的写作内容 ........................................................................318
18.
8集成测试报告写作的内容 ...........................................................................................327
18.
9单元测试报告写作的内容 ...........................................................................................331
18.10
系统测试总结报告写作的内容 .................................................................................333
18.
10.1系统测试总结报告模板的图示 ......................................................................333
18.
10.2系统测试总结报告模板的写作要点 ..............................................................334
18.11
验收测试报告写作的内容 .........................................................................................336
第 19章软件的其他测试技术 344
19.1可用性测试
...................................................................................................................344
19.2安全性测试
...................................................................................................................344
19.
3强度测试或压力测试 ...................................................................................................345
19.4确认测试
.......................................................................................................................345
19.5容错性测试
...................................................................................................................346
19.
6回归测试技术 ...............................................................................................................346
19.7易用性测试
...................................................................................................................348
第 20章软件测试管理 349
20.
1测试管理概述 ...............................................................................................................349
20.
2测试项目管理 ...............................................................................................................350
20.
3测试过程管理 ...............................................................................................................353
20.
4组织和人员管理 ...........................................................................................................355
20.4.1
软件测试的组织 ...............................................................................................355
20.4.2
软件测试组织的职能 .......................................................................................357
20.4.3
软件测试的组织结构 .......................................................................................357
20.4.4
软件测试组织结构的准则 ...............................................................................357
20.4.5
软件测试人员的能力要求 ...............................................................................357
20.
5软件配置管理 ...............................................................................................................358
20.5.1
软件配置管理概述 ...........................................................................................358
20.5.2
软件配置管理要求 ...........................................................................................364
20.
6软件缺陷管理 ...............................................................................................................366
20.
7变更请求管理 ...............................................................................................................367
20.8进度管理
.......................................................................................................................368
20.9风险管理
.......................................................................................................................369
20.9.1
软件风险的基本概念 .......................................................................................369
20.9.2
风险识别和分析 ...............................................................................................372
20.9.3
软件项目风险管理模型 ...................................................................................374
20.10
成本管理 .....................................................................................................................374