《软件测试项目实战——技术、流程与管理》已上市,请关注

 

《软件测试项目实战——技术、流程与管理》是一本关于测试管理的书,也是一本根据作者从事金融行业的外包项目测试的工作经验整理的技术管理类书籍。
   《软件测试项目实战——技术、流程与管理》讲述了大、中型软件测试项目的实施过程,包括从单元测试、单元测试审核和集成测试到后面的功能测试、性能测试及客户的验收测试活动。对于各个测试阶段中的如何实施设计、如何测试等提出了解决方案,可以供广大的测试人员参考。

前  言
迄今为止,软件测试是人类所能找到的能确保交付软件质量的最好方法。本书是作者12年软件测试行业工作实践的成果,尤其是在金融行业外包项目测试工作的两年时间里,以及在软件测试培训行业工作的两年时间里,对我产生了深远的影响。对于我们国内最早一批从事软件测试工作的先行者来说,把自己的工作体验拿出来与测试同行分享是非常热爱软件测试工作的一种表现,而我本人在培训企业工作的经历使我拓展了测试视野,也亲身设计了多门课程(并非在市场公开销售培训书籍),而从事外包项目管理的工作经验,使我们感受到了测试技术在实践中的运用也不是一件容易的事情,且项目中很多不是技术本身的事情。当我坐在电脑前面,开始策划编写一本集测试技术、测试方法和测试管理的书籍,曾几何时下定了多少的决心,因为我知道,策划编写一本书是需要付出多少的时间和辛苦,而这些时间你可能用来陪家人和孩子,可能与朋友畅谈,可能在咖啡馆或酒吧享受人生,但是当我开始写和编写的过程中,得到了很多同行的支持,大家也都期待有一本讲述测试项目管理的书籍,这些是我坚持写完这本书的最大动力。
软件测试行业的发展需要我们每个人的努力,希望同行们加倍努力,研究测试技术、测试方法,让我们国内的软件测试水平达到国际先进水平。因为测试技术本身是与软件应用的领域和行业相关的,软件测试技术跟软件开发一样,必将进行细分,在各行各业从事软件测试的同行,都可能成为该领域的测试专家。
当你拿到这本书时,不管它是否适合你,或者它的内容质量是否好,你都可以在我的blog(http://blog.sina.com.cn/softtest,软件测试中文站)发表意见,那将成为我改进的动力,我们也可以交流测试工作经验和心得体会。
虽然这本书经过了多次校对,但毕竟是我在实践中整理的内容,难免在认识上存在误区或片面的地方。测试技术本身正在发展之中,可以说是百花齐放、百家争鸣的时代,欢迎同行们提出意见和斧正。
关于本书
本书是一本关于测试管理的书,主要是根据作者从事金融行业的外包项目测试的工作经验整理的技术管理类书籍。本书面向的读者包括测试工程师、项目经理、测试经理及想要了解软件测试项目过程的软件开发人员。
本书讲述了大、中型软件测试项目的实施过程,包括从单元测试、单元测试审核和集成测试到后面的功能测试、性能测试及客户的验收测试活动。对于各个测试阶段中的如何实施设计、如何测试等提出了方法,可以供广大的测试人员参考。

本书特色
软件测试理论技术与实践方法、必要的测试流程和规范,以及作者的测试管理经验总结和体会的融合,通过一个完整的项目活动过程贯穿全文。
阅读指引
本书第1、2章是测试基础和方法论的介绍,读者可以有选择地进行阅读;第3~11章是以测试项目的实施过程为主线,把项目中各活动分别进行了讲解,全面展示了测试项目实施过程中的技术运用和方法运用;第12章是作者对项目管理的总结体会。本书正文后提供了3份报告模板,可作为大型测试项目文档模板参考。本书可以归纳成为如下几个部分。
1.测试方法论
l        第1章 测试实践方法论,介绍软件测试目的、分类、活动流程、测试人员应掌握的一些协议及金融软件系统特点和测试特点。
l        第2章 软件质量和缺陷报告,介绍软件质量和质量模型及子属性、缺陷跟踪流程和缺陷跟踪工具、缺陷故障模型及典型缺陷分析。
2.测试计划和测试设计
l        第3章 文档审查和测试需求分析,介绍文档审查和评审、测试需求分析及QC中的测试需求管理
l        第4章 测试设计,首先介绍常用测试用例设计方法和运用案例,项目中各阶段的测试用例设计,最后讲解在测试设计阶段所应该做的一些其他工作,例如熟悉“新”技术、“新”系统等。
l        第5章 做好项目测试计划,讲解如何编写测试计划,包括目标、范围、资源、进度、轮次、策略、风险、测试约定和约束条件等,提供一份测试计划模板。
3.项目中的测试执行活动
l        第6章 单元测试及结果审核,介绍白盒测试基础,单元测试步骤、内容和用例设计,单元测试工具和测试驱动框架,JUnit介绍及运用案例,每日构建和单元测试结果审核。
l        第7章 产品集成测试,包括集成测试流程、策略、执行流程和结果分析等。
l        第8章 项目功能测试,包括测试环境搭建、数据准备、参数和流程配置、冒烟测试、工作分工、QC的测试执行要求、测试过程数据采集和分析,以及界面测试中使用的流程和规范等。
l        第9章 项目性能测试,包括常用指标和术语、资源监控和数据采集、性能测试过程、常见性能测试故障模型。全面展示了一个金融项目的性能测试项目全过程,是非常全面的一个案例。
l        第10章 客户验收测试和测试报告评审,包括用户验收测试、测试报告和测试报告评审。
l        第11章 项目测试的自动化,包括自动化工具QTP介绍、自动化测试流程、自动化脚本编写规范、QC和QTP构建自动化测试框架等。
4.项目管理
第12章 测试项目管理,包括工作量评估模型、测试范围控制、质量管理、人员管理、风险管理、沟通、测试度量和配置管理等。
5.附录
附录中包括3份测试报告模板,包括功能测试报告模板、性能测试报告模板、测试总结报告模板,这3份模板供读者编写测试报告或制作测试报告模板时参考。
致谢
    本书历时将近一年完成。我非常感谢我的爱妻郑春梅,还有我刚满3周岁的孩子曹思源。在过去的这一年中,他们容忍我花费大半时间来写书,而这些时间本来应该用于陪伴他们。在我为编写本书积累大量材料的外包项目测试的两年时间内,我长期出差在外,没有尽到照顾家庭的职责。写完这本书后,我会加倍地偿还他们为我的付出,用更多的业余时间陪伴妻子和孩子……
感谢我在吉贝壳公司时的黄官银总监,他让我在项目工作中积累了大量的材料用于本书的编写。
感谢参与本书审稿的各位专家和老师,他们认真阅读了本书的初稿并给出很多宝贵的意见,再次向他们表示衷心的感谢。还有一些同行的朋友,他们为本书的完稿提供了很多素材,也提出了很多的测试思想,这本书中也凝结了他们的智慧和工作经验,非常感谢。
感谢参与本书策划、编辑、校对、出版的电子工业出版社易飞思公司工作人员,他们严谨、求实的工作作风和态度,使本书得以更加完善,在此一并表示感谢。

曹向志

第1章  测试实践方法论        1
1.1  测试的发展历程、现状及未来        1
1.2  外包测试的分类和发展趋势        3
1.3  软件测试方法论        4
1.3.1  软件测试目的演变        5
1.3.2  坚持软件测试的原则        6
1.3.3  不要被多种测试类型分类所迷惑        8
1.3.4  两种最常用的软件测试模型        12
1.4  可纳入测试规范的测试活动流程        14
1.5  对软件测试理解的误区        16
1.6  测试岗位对人员基本素质的要求        17
1.7  检查自己储备的知识够不够        18
1.7.1  操作系统知识        19
1.7.2  TCP/IP协议        20
1.7.3  DNS域名服务        24
1.7.4  DHCP        25
1.7.5  HTTP协议        26
1.8  金融行业软件系统特点和测试特点        31
第2章  软件质量和缺陷报告        35
2.1  软件质量        35
2.1.1  质量的定义        35
2.1.2  测试度量        36
2.2  理解国标中的质量模型        37
2.2.1  目标中的质量模型        38
2.2.2  外部质量和内部质量模型的属性        38
2.2.3  使用质量的质量模型        41
2.3  软件缺陷不再仅仅是小“Bug”        42
2.3.1  软件缺陷概述        42
2.3.2  相关案例        43
2.3.3  产生软件缺陷的原因及处理办法        45
2.4  测试工作离不开缺陷报告        46
2.4.1  缺陷报告的要素        47
2.4.2  缺陷严重程度        48
2.4.3  缺陷的6种状态        50
2.4.4  填写缺陷报告的规范        51
2.5  定制团队的缺陷跟踪流程        51
2.6  选用缺陷跟踪工具,提高团队工作效率        60
2.6.1  功能全面的Quality Center工具        60
2.6.2  小巧精干的Butterfly工具        62
2.7  基于B/S架构的测试        64
2.8  典型缺陷分析        67
第3章  文档审查和测试需求分析        71
3.1  文档审查和评审        71
3.1.1  业务需求规格说明书的审查        71
3.1.2  概要设计文档的审查        72
3.1.3  安装部署文档的审查        72
3.1.4  用户手册审查        73
3.1.5  在线帮助文档的审查        73
3.1.6  项目测试中的评审活动        74
3.2  测试活动的基础——测试需求分析        75
3.2.1  如何理解测试需求        75
3.2.2  测试需求分析        76
3.3  使用QC管理测试需求        78
3.3.1  定制字段让测试需求表现更充分        80
3.3.2  从Excel导入测试需求        80
第4章  测试设计        83
4.1  测试用例概述        83
4.1.1  定义        83
4.1.2  测试用例要素最小集        84
4.2  等价类划分        84
4.2.1  等价类划分设计方法的基础        84
4.2.2  等价类划分设计方法的运用        87
4.3  边界值        91
4.3.1  边界值设计方法的基础        91
4.3.2  边界值设计方法的运用        92
4.4  因果图        94
4.4.1  因果图设计基础        94
4.4.2  因果图设计方法的运用        96
4.5  测试用例管理        97
4.5.1  QC中的测试用例组织和编写        97
4.5.2  从Excel中导入测试用例        98
4.6.3  测试需求和测试用例相互关联        100
4.6  测试用例设计        101
4.6.1  集成测试用例设计        103
4.6.2  功能测试用例设计        105
4.6.3  性能测试用例设计        106
4.6.4  测试用例说明        108
4.7  熟悉项目中运用的“新”知识        109
4.7.1  柜面(ACE)介绍        109
4.7.2  事务中间件——Tuxedo        111
4.8  在测试中采用的界面测试规范        112
4.8.1  C/S界面设计规范        112
4.8.2  B/S界面规范        116
第5章  做好项目测试计划        123
5.1  制订一份好的测试计划的重要性        123
5.2  测试计划中的主要内容        124
5.2.1  测试目标和范围        124
5.2.2  测试资源        126
5.2.3  进度计划        127
5.2.4  测试约束条件        128
5.2.5  测试轮次        129
5.2.6  测试策略        130
5.2.7  项目风险        132
5.2.8  测试约定        133
5.3  编写性能测试计划关注点        134
5.4  系统测试计划模板        134
第6章  单元测试及结果审核        159
6.1  白盒测试基础        159
6.1.1  语句覆盖        160
6.1.2  判定覆盖/分支覆盖        161
6.1.3  条件覆盖        161
6.1.4  判定-条件覆盖        162
6.1.5  条件组合测试        163
6.1.6  路径测试        164
6.1.7  循环测试        164
6.2  单元测试        167
6.2.1  概述        167
6.2.2  单元测试的步骤        168
6.2.3  单元测试的内容        168
6.2.4  单元测试用例设计        170
6.3  测试驱动框架        171
6.3.1  JUnit的介绍        171
6.3.2  JUnit运用案例        173
6.4  每日构建        177
6.5  单元测试结果审核        180
第7章  产品集成测试        185
7.1  产品集成测试关注点        185
7.2  产品集成测试        186
7.3  集成测试计划        188
7.4  集成测试设计        189
7.5  集成测试执行        190
7.6  集成测试总结        192
第8章  项目功能测试        193
8.1  执行前的准备工作        193
8.2  管理工具也需要规则——QC中测试执行要求        197
8.3  使用PL/SQL Developer获取对比的数据        202
8.3.1  编写存储过程        204
8.4  试过程中的数据采集和分析        205
8.4.1  数据采集和度量        206
8.4.2  多角度展示缺陷统计数据        207
8.4.3  测试用例执行统计和需求覆盖统计        209
8.4.4  如何给客户做测试有效性分析        210
第9章  项目性能测试        213
9.1  性能测试中的概念        213
9.2  测试执行准备工作也很重要        215
9.3  判断设备选型性能评估        217
9.3.1  用户业务状况分析        217
9.3.2  系统服务器处理能力估算原则        218
9.3.3  数据库服务器处理能力估算结果        220
9.3.4  应用服务器处理能力估算结果        220
9.3.5  主机内存容量估算        220
9.3.6  I/O资源        221
9.3.7  存储设备硬件配置估算        222
9.4  为测试整合测试工具        224
9.5  资源监控和数据采集        225
9.5.1  UNIX/Linux监控指标        225
9.5.2  Oracle 监控指标        229
9.5.3  Informix监控        232
9.5.4  Weblogic监控指标        238
9.5.5  Apache监控        242
9.5.6  Tuxedo监控        244
9.6  启用IP欺骗        246
9.7  性能测试过程        249
9.7.1  轻松创建虚拟用户        249
9.7.2  创建真实的负载        250
9.7.3  实时监控场景        251
9.7.4  分析测试结果        252
9.8  构造测试基础数据        253
9.9  LoadRunner和QC的完美结合        256
9.10  某信息化系统性能测试案例        258
9.10.1  分析性能需求        258
9.10.2  测试场景设计与开发        261
9.10.3  性能测试建模        262
9.10.4  构造测试基础数据        263
9.10.5  测试环境        264
9.10.6  测试策略        265
9.10.7  测试场景设计        266
9.10.8  测试脚本录制和修改        267
9.10.9  参数关联和参数化        275
9.10.10  测试结果分析和调优        276
9.11  常见性能故障模型        280
9.12  性能测试中需要注意的一些问题        284
第10章  客户验收测试和测试报告评审        287
10.1  客户验收测试        287
10.2  测试报告        288
10.3  测试报告评审        289
第11章  项目测试的自动化        291
11.1 自动化测试面面观        291
11.2 有关自动化测试的误区        294
11.3 自动化测试不可缺少的工具        295
11.4 功能自动化测试工具——QuickTest Professional        297
11.4.1  脚本录制方式        299
11.4.2  QTP的各种参数设置        300
11.4.3  测试结果分析        305
11.5  QTP对象识别        306
11.6  QC和QTP构建自动化测试框架        309
11.6.1  BPT介绍        309
11.6.2  工具连接        310
11.6.3  BPT使用经验        313
11.7  自动化测试流程        315
11.8  自动化测试脚本编写规范        316
第12章  测试项目管理        321
12.1  项目工作量评估模型        321
12.1.1  开发比例法        322
12.1.2  外包项目经验类比法        323
12.1.3  WBS估算法        325
12.1.4  Delphi法        330
12.2  测试范围控制        331
12.3  项目控制        332
12.3.1  项目经理对项目控制        332
12.3.2  管理层对项目的控制        334
12.4  测试团队工作质量保障        335
12.4.1  同行评审        335
12.4.2  QA审计        336
12.5  测试团队人员管理        338
12.5.1  组织架构        338
12.5.2  测试团队中各岗位职责        339
12.5.3  组建您需要的测试团队        342
12.5.4  绩效考核        343
12.6  不可小视的风险管理        345
12.6.1  项目风险        346
12.6.2  组织风险        350
12.6.3  技术风险        351
12.6.4  风险分析和风险跟踪        353
12.7  您40%的时间是在沟通        356
12.7.1  书面沟通        357
12.7.2  会议沟通        360
12.7.3  口头和IM沟通        361
12.7.4  沟通中的注意事项        361
12.8  用数据度量项目        361
12.8.1 “时间”和“开销”度量        361
12.8.2  缺陷度量        363
12.8.3  测试用例度量        364
12.9  软件测试配置管理        364
附录一 功能测试报告模板        368
附录二 性能测试报告模板        380
附录三 测试总结报告模板        393

你可能感兴趣的:(《软件测试项目实战——技术、流程与管理》已上市,请关注)