软件测试案例与实践教程

软件测试案例与实践教程"

作者:古乐、史九林
ISBN:9787302139249
定价:¥43
字数:千字
页数:
出版时间:2007.02.01
开本:
版次:1-4
装帧:
出版社:清华大学出版社
简介

本书通过一个文件检索的小项目,以实例的方式指导读者如何从开发的需求设计文档入手,逐步完成从单元测试到集成测试,再到系统测试的所有测试工作。该书涵盖了测试计划、测试设计、测试用例、测试用例脚本、测试执行到测试报告等在实际测试工作中都会接触到的内容。对想要快速上手从事软件测试工作的人员来讲,是一本很好的工作指导书。

本书可以作为大学本科高年级学生或研究生教材。

前言

本书于两年前已经完成了80%,之后本人因母公司的需要转入到一家合资公司负责TDSCDMA测试部门管理工作。由于合资公司新成立,需要从无到有地建立整个部门,两年多来一直都很繁忙,直到最近部门已经逐步成熟,产品质量也基本得到了保障,因此抽得空闲把本书其余部分内容完成了。

本书是以一个小项目为背景,按照瀑布模型进行开发的。该项目是作者为了便于技术资料整理而开发的一个小工具,由于规模不大,比较适合于教学演示。在《软件测试技术概论》一书中,作者介绍了很多测试概念,但是很多读者反映这些概念很难应用于实践,因此在本书中,作者以该项目为实例指导读者如何来做测试,包括白盒测试和黑盒测试,以及在测试工作中需要涉及的基本测试文档,如测试计划、测试方案、测试用例、测试报告等。在本书的第23章中,作者把该书中的一些经验与《软件测试技术概论》中的众多概念进行了对照和解释,这对读者理解和掌握一些必要的测试理论和概念会有帮助。

本书在结构安排上分为下述六个部分。

第一部分: 需求设计篇。该部分内容主要用于描述文件检索项目的开发文档。这些文档是后面不同测试阶段的关键测试输入,文档的质量直接影响测试设计的质量。

第二部分: 单元测试篇。该部分内容主要用于指导读者如何在一个项目开发过程中进行单元测试的工作。单元测试的被测对象是函数,其关键输入为项目的详细设计文档。单元测试活动最早可以起始于详细设计阶段。

第三部分: 集成测试篇。该部分内容主要用于指导读者如何在一个项目开发过程中进行集成测试的工作。集成测试的被测对象是模块间接口,其关键输入为项目的概要设计文档。集成测试活动最早可以起始于概要设计阶段。

第四部分: 系统测试篇。该部分内容主要用于指导读者如何在一个项目开发过程中进行系统测试的工作。系统测试的被测对象分为功能和非功能两大部分,其关键输入为项目的需求文档。系统测试活动最早可以起始于需求分析阶段。

第五部分: 总结篇。该部分内容对前面的测试工作做了一个汇总,总结在测试过程中出现的问题和得到的经验教训。

第六部分: 附录篇。该部分内容提供了本书学习中需要参考的文档。

对于本书的学习,如果读者熟悉C语言、Visual Basic语言,对阅读本书会有相当大的帮助。如果读者不熟悉C语言,那么在理解本书提供的代码和单元测试脚本上会有一些困难,为此,建议读者把重点放在测试计划、测试设计、用例设计和测试报告上。《软件测试技术概论》是本书的理论基础,建议读者在学习本书之前先阅读。如果读者从事过测试工作,那么学习本书的时候会容易理解一些。有可能本书讲述的方法与读者的实践经验不同,甚至有矛盾,作者建议读者进行比较,如果觉得有道理,可以去做一些尝试。

本书的下载文件包含了实例代码和自动化测试脚本本书提到下载文件均可在清华大学出版社网站上下载。。实例代码是用Microsoft Visual Studio 6.0的开发环境开发的,而自动化脚本是用IBM Rational的TestStudio 2002开发的。在单元测试和集成测试的覆盖率收集中,使用的是Telelogic的Logiscope测试工具。建议读者准备好这些工具。如果没有这些工具,建议到网上申请试用版本。

自从《软件测试技术概论》出版以来,很多读者给本人发来了邮件,反馈了很多有价值的问题,由于本人是一个懒于写邮件的人,因此对很多邮件都没有回复,在此表示歉意。网上有些读者指出,在《软件测试技术概论》中有很多概念都是译自国外的文献资料,事实上的确也是这样,本人并不想刻意隐瞒,因此在写作的时候尽可能把引用到的文献资料一一列出。当然,本人不能保证是否有遗漏的或不确切的,因为毕竟没有一一详细验证。测试理论的概念毕竟在国外已经发展了几十年,很多概念都已经成熟,本人也不想凭空创造一些理论概念,本人的目的是希望能够把这些理论介绍给国内的读者,让读者能够更好地理解测试的内容。当然,《软件测试技术概论》中还是包含了作者对测试的很多理解,很多内容也不是纯粹的翻译,更多地加入了作者的一些想法和修改,相信读者应该可以从中感觉出来。

本人在学校学的是类似编译原理的理论性课程,而到单位后从事的却是软件工程和软件测试方面实用性很强的工作。本人并没有因为专业不对口而闷闷不乐,反而潜心研究,反复实践,两年后终有小成,并逐步得到公司重用。从学校毕业到现在,本人从事了近8年的测试工作,从中有很多感触和教训。其中感受最深的有三个方面: 第一个方面,目前在国内大部分高校中,对软件测试方面的专业不够重视,这可能存在多种原因,但是这影响到了软件产业界测试人才的发展; 第二个方面,在目前的产业界,真正愿意投入大量测试人力的公司,基本都集中在一些对质量要求较高的大型通信和软件企业,很多企业还没有意识到测试的重要性,很多人对测试还存在着偏见,认为测试是低于开发的工种,缺乏技术含量; 第三个方面,现在有些从学校毕业出来的学生比较浮躁,不喜欢从事基础的工作和学习基础的知识,喜欢谈自我价值的实现,想一蹴而就,看一两本书或做一两个产品就成为专家。从本人近几年的用人经验来看,这是很要不得的。经验需要慢慢积累,知识也需要不断提高。有些人到了企业之后就不注意学习,也不注意经验的总结,结果做了两三年以后,老的知识已经忘得差不多了,新的知识又没有学到多少,这样只会慢慢被淘汰。

正是因为上面这些原因,本人决定编写有关测试方面的书籍,一方面能够把国外已经成熟的测试知识引入到国内来,另一方面能够把本人在工作中的经验总结出来与大家共享。本人希望通过这个系列书籍的出版能够对国内的软件测试行业发展提供一些帮助。为了这个理想,本人将锲而不舍、孜孜以求。

在本书写作过程中得到多方面的帮助、指导和支持,在此表示感谢。尤其是涂渊,他是本人的至交好友,也是一位有着多年丰富测试经验的人员,他在测试计划和测试设计方面给了作者很多好的想法。另外,还要感谢无忧测试网(http://www.51testing.net)的几位朋友,多谢他们一直以来的鼓励和支持。

鉴于作者才疏学浅,书中不乏疏漏和错误,欢迎读者批评指正。

古乐 于上海

2006年12月

目录

第一部分需求设计篇

第1章文件检索项目软件需求规格说明书

1.1引言

1.1.1目的

1.1.2文档约定

1.1.3预期的读者和阅读建议

1.1.4产品的范围

1.1.5参考文献

1.2综合描述

1.2.1产品的前景

1.2.2产品的功能

1.2.3用户类和特征

1.2.4运行环境

1.2.5设计和实现上的限制

1.2.6假设和依赖

1.3外部接口需求

1.3.1用户界面

1.3.2硬件接口

1.3.3软件接口

1.3.4通信接口

1.4系统特性

1.4.1说明和优先级

1.4.2激励/响应序列

1.4.3功能需求

1.5非功能需求

1.5.1性能需求

1.5.2安全设施需求

1.5.3安全性需求

1.5.4软件质量属性

1.5.5业务规则

1.5.6用户文档

1.6其他需求

1.7词汇表

1.8分析模型

1.9待确定问题的列表

第2章文件检索项目界面规格说明书

2.1引言

2.1.1目的

2.1.2文档约定

2.1.3预期的读者和阅读建议

2.1.4参考文献

2.2产品的界面

2.2.1第一层界面

2.2.2第二层界面

第3章文件检索项目概要设计说明书

3.1引言

3.1.1目的

3.1.2范围

3.1.3参考文献

3.2概要设计

3.2.10层设计描述

3.2.21层设计描述

3.2.3概要设计汇总

第4章文件检索项目详细设计说明书

4.1引言

4.1.1目的

4.1.2范围

4.1.3参考文献

4.2详细设计

4.2.1界面模块详细设计

4.2.2配置模块详细设计

4.2.3文件检索模块详细设计

4.2.4详细设计汇总

第二部分单元测试篇

第5章文件检索项目单元测试计划

5.1引言

5.1.1目的

5.1.2测试策略

5.1.3范围

5.1.4参考文献

5.1.5术语

5.2测试项目

5.3被测函数

5.4不被测函数

5.5测试方法

5.6测试通过/失败标准

5.7测试挂起/恢复的条件

5.8单元测试交付物

5.9单元测试任务

5.10环境需求

5.10.1硬件需求

5.10.2软件需求

5.10.3测试工具

5.10.4其他

5.11角色和职责

5.12人员及培训

5.13单元测试进度

5.14风险和应急计划

5.15审批

第6章文件检索项目单元测试设计规格

6.1引言

6.1.1目的

6.1.2范围

6.1.3参考文献

6.1.4术语

6.2被测对象

6.3被测函数

6.4测试总体设计方法

6.5测试模型设计

6.5.1测试组网图

6.5.2操作流程

6.6测试设计规格

6.6.1AddDirLevel测试设计规格

6.6.2DelDirLevel测试设计规格

6.6.3AddFileName测试设计规格

6.6.4DelFileName测试设计规格

6.6.5ExportConFile测试设计规格

6.6.6ImportConFile测试设计规格

6.6.7IsNumeric测试设计规格

6.6.8GetOptionPattern测试设计规格

6.6.9FileSearch测试设计规格

6.6.10FileSearchInLink测试设计规格

6.6.11IsInDirSettings测试设计规格

6.6.12IsInFileSettings测试设计规格

6.6.13GetFirstRstCont测试设计规格

6.6.14GetNextRstCont测试设计规格

6.6.15RstSort测试设计规格

6.6.16CompareRstNode测试设计规格

6.6.17SaveResult测试设计规格

6.6.18MatchPattern测试设计规格

6.6.19FindSubString测试设计规格

6.7测试项汇总

6.8审批

第7章文件检索项目单元测试用例设计

7.1引言

7.1.1目的

7.1.2范围

7.1.3参考文献

7.1.4术语

7.2被测对象

7.3被测函数

7.4测试用例规格

7.4.1AddDirLevel测试用例规格

7.4.2DelDirLevel测试用例规格

7.4.3AddFileName测试用例规格

7.4.4DelFileName测试用例规格

7.4.5ExportConFile测试用例规格

7.4.6ImportConFile测试用例规格

7.4.7IsNumeric测试用例规格

7.4.8GetOptionPattern测试用例规格

7.4.9FileSearch测试用例规格

7.4.10FileSearchInLink测试用例规格

7.4.11IsInDirSettings测试用例规格

7.4.12IsInFileSettings测试用例规格

7.4.13GetFirstRstCont测试用例规格

7.4.14GetNextRstCont测试用例规格

7.4.15RstSort测试用例规格

7.4.16CompareRstNode测试用例规格

7.4.17SaveResult测试用例规格

7.4.18MatchPattern测试用例规格

7.4.19FindSubString测试用例规格

7.5审批

第8章文件检索项目单元测试用例脚本

8.1单元测试脚本的组织

8.2MatchPattern的单元测试脚本

8.2.1ConfigMod_Common

8.2.2FileSearch_Common

8.2.3Env

8.2.4MatchPattern

8.2.5MatchPattern_Case

8.2.6MatchPattern_Stub

8.2.7MatchPattern_Drive

第9章文件检索项目单元测试执行

9.1环境准备

9.2单元测试执行过程

9.2.1第一次执行

9.2.2第二次执行

9.2.3第三次执行

9.2.4第四次执行

9.2.5第五次执行

9.2.6第六次执行

9.3覆盖率数据收集

9.4为覆盖率标准补充测试用例

9.4.1DelFileName测试用例规格

9.4.2ExportConFile测试用例规格

9.4.3GetOptionPattern测试用例规格

9.4.4FileSearch测试用例规格

9.4.5FileSearchInLink测试用例规格

9.4.6IsInDirSettings测试用例规格

9.4.7CompareRstNode测试用例规格

9.4.8MatchPattern测试用例规格

9.4.9FindSubString测试用例规格

9.5新增测试用例执行

9.5.1第七次执行

9.5.2第八次执行

9.6新增覆盖率数据收集

9.7缺陷记录

9.8工作量数据记录

第10章文件检索项目单元测试报告

10.1引言

10.2测试时间、地点和人员

10.3测试环境描述

10.4测试数据度量

10.4.1测试用例执行度量

10.4.2测试进度和工作量度量

10.4.3缺陷数据度量

10.4.4覆盖率数据度量

10.4.5综合数据分析

10.5测试评估

10.5.1测试任务评估

10.5.2测试对象评估

10.6遗留缺陷分析

10.7审批

10.8附件

10.8.1测试用例执行表

10.8.2测试覆盖率报告

10.8.3缺陷分析报告

第三部分集成测试篇

第11章文件检索项目集成测试计划

11.1引言

11.1.1目的

11.1.2测试策略

11.1.3范围

11.1.4参考文献

11.1.5术语

11.2测试项目

11.3被测接口

11.4不被测接口

11.5测试方法

11.6测试通过/失败标准

11.7测试挂起/恢复的条件

11.8集成测试交付物

11.9集成测试任务

11.10环境需求

11.10.1硬件需求

11.10.2软件需求

11.10.3测试工具

11.10.4其他

11.11角色和职责

11.12人员及培训

11.13集成测试进度

11.14风险和应急计划

11.15审批

第12章文件检索项目集成测试设计规格

12.1引言

12.1.1目的

12.1.2范围

12.1.3参考文献

12.1.4术语

12.2被测对象

12.3被测接口

12.4测试总体设计方法

12.5测试模型设计

12.5.1测试组网图

12.5.2操作流程

12.6测试设计规格

12.6.1HLD002INT013测试设计规格

12.6.2HLD003INT004测试设计规格

12.6.3GUIINT001测试设计规格

12.6.4GUIINT002测试设计规格

12.6.5GUIINT003测试设计规格

12.6.6GUIINT004测试设计规格

12.6.7GUIINT005测试设计规格

12.6.8GUIINT006测试设计规格

12.6.9GUIINT007测试设计规格

12.6.10GUIINT008测试设计规格

12.6.11GUIINT009测试设计规格

12.6.12GUIINT010测试设计规格

12.6.13GUIINT011测试设计规格

12.7测试项汇总

12.8审批

第13章文件检索项目集成测试用例设计

13.1引言

13.1.1目的

13.1.2范围

13.1.3参考文献

13.2被测对象

13.3被测函数

13.4测试用例规格

13.4.1HLD002INT013测试用例规格

13.4.2HLD003INT004测试用例规格

13.4.3GUIINT001测试用例规格

13.4.4GUIINT002测试用例规格

13.4.5GUIINT003测试用例规格

13.4.6GUIINT004测试用例规格

13.4.7GUIINT005测试用例规格

13.4.8GUIINT006测试用例规格

13.4.9GUIINT007测试用例规格

13.4.10GUIINT008测试用例规格

13.4.11GUIINT009测试用例规格

13.4.12GUIINT010测试用例规格

13.4.13GUIINT011测试用例规格

13.5审批

第14章文件检索项目集成测试用例脚本

14.1建立自动化测试工程

14.2输入测试需求规格

14.3创建集成测试计划

14.4创建自动化脚本

14.4.1建立公共脚本

14.4.2录制和编辑第一个脚本

14.4.3用集成测试计划管理脚本

第15章文件检索项目集成测试执行

15.1环境准备

15.2集成测试执行过程

15.2.1第一次执行

15.2.2第二次执行

15.3覆盖率数据收集

15.4缺陷记录

15.5工作量数据记录

第16章文件检索项目集成测试报告

16.1引言

16.2测试时间、地点和人员

16.3测试环境描述

16.4测试数据度量

16.4.1测试用例执行度量

16.4.2测试进度和工作量度量

16.4.3缺陷数据度量

16.4.4覆盖率数据度量

16.4.5综合数据分析

16.5测试评估

16.5.1测试任务评估

16.5.2测试对象评估

16.6遗留缺陷分析

16.7审批

16.8附件

16.8.1测试用例执行表

16.8.2测试覆盖率报告

16.8.3缺陷分析报告

16.8.4缺陷漏测分析

第四部分系统测试篇

第17章文件检索项目系统测试计划

17.1引言

17.1.1目的

17.1.2测试策略

17.1.3范围

17.1.4参考文献

17.1.5术语

17.2测试项目

17.3被测特性

17.4不被测特性

17.5测试方法

17.6测试通过/失败标准

17.7测试挂起/恢复的条件

17.8系统测试交付物

17.9测试任务

17.10环境需求

17.10.1硬件需求

17.10.2软件需求

17.10.3测试工具

17.11角色和职责

17.12人员及培训

17.13系统测试进度

17.14风险和应急计划

17.15审批

第18章文件检索项目系统测试设计规格

18.1引言

18.1.1目的

18.1.2范围

18.1.3参考文献

18.1.4术语

18.2被测对象

18.3被测特性

18.4测试总体设计方法

18.5测试模型设计

18.5.1测试组网图

18.5.2操作流程

18.6功能测试设计规格

18.6.1SRSFUN001测试设计规格

18.6.2SRSFUN003测试设计规格

18.6.3SRSFUN005测试设计规格

18.6.4SRSFUN007测试设计规格

18.6.5SRSFUN009测试设计规格

18.6.6SRSFUN011测试设计规格

18.6.7SRSFUN013测试设计规格

18.6.8SRSFUN015测试设计规格

18.6.9SRSFUN017测试设计规格

18.6.10SRSFUN019测试设计规格

18.6.11SRSFUN021测试设计规格

18.7性能测试规格

18.8GUI规范测试规格

18.9可安装性测试规格

18.10兼容性测试规格

18.11测试项汇总

18.12审批

第19章文件检索项目系统测试用例设计

19.1引言

19.1.1目的

19.1.2范围

19.1.3参考文献

19.1.4术语

19.2被测对象

19.3被测特性

19.4功能测试用例规格

19.4.1SRSFUN001测试用例规格

19.4.2SRSFUN003测试用例规格

19.4.3SRSFUN005测试用例规格

19.4.4SRSFUN007测试用例规格

19.4.5SRSFUN009测试用例规格

19.4.6SRSFUN011测试用例规格

19.4.7SRSFUN013测试用例规格

19.4.8SRSFUN015测试用例规格

19.4.9SRSFUN017测试用例规格

19.4.10SRSFUN019测试用例规格

19.4.11SRSFUN021测试用例规格

19.5性能测试用例规格

19.6GUI规范测试用例规格

19.7可安装性测试用例规格

19.8兼容性测试用例规格

19.9审批

第20章文件检索项目系统测试用例脚本

20.1建立自动化测试工程

20.2输入测试需求规格

20.3创建系统测试计划

20.4创建自动化脚本

第21章文件检索项目系统测试执行

21.1FileSearch Ver1.01系统测试

21.1.1环境准备

21.1.2系统第一次预测试

21.1.3回归分析

21.1.4系统第二次预测试

21.1.5系统功能测试

21.2FileSearch Ver1.02系统测试

21.2.1环境准备

21.2.2回归分析

21.2.3FileSearchInLink单元测试回归

21.2.4集成测试回归

21.2.5系统功能测试

21.2.6系统性能测试执行

21.3FileSearch Ver1.03系统测试

21.3.1环境准备

21.3.2回归分析

21.3.3RstSort单元测试回归

21.3.4系统功能测试

21.3.5系统性能测试

21.3.6系统GUI规范测试执行

21.4FileSearch Ver1.04系统测试

21.4.1环境准备

21.4.2系统GUI测试回归

21.4.3系统可安装性测试

21.4.4系统兼容性测试执行

21.5缺陷记录

21.6工作量数据记录

第22章文件检索项目系统测试报告

22.1引言

22.2测试时间、地点和人员

22.3测试环境描述

22.4测试数据度量

22.4.1测试用例执行度量

22.4.2测试进度和工作量度量

22.4.3缺陷数据度量

22.4.4覆盖率数据度量

22.4.5综合数据分析

22.5测试评估

22.5.1测试任务评估

22.5.2测试对象评估

22.6遗留缺陷分析

22.7审批

22.8附件

22.8.1测试用例执行表

22.8.2测试覆盖率报告

22.8.3缺陷分析报告

22.8.4缺陷漏测分析

第五部分总结篇

第23章文件检索项目总结

23.1各阶段活动分析

23.1.1需求分析

23.1.2概要设计

23.1.3详细设计

23.1.4编码

23.1.5测试计划

23.1.6测试设计

23.1.7测试用例

23.1.8测试脚本

23.1.9测试执行

23.1.10测试报告

23.1.11小结

23.2度量数据汇总

23.3经验数据参考

第六部分附录篇

附录AGUI规范

A.1界面设计总则

A.2基本元素规范

附录BC/C++语言编程规范

B.1排版规范

B.2注释规范

B.3标识符命名规范

B.4可读性规范

B.5变量、结构规范

B.6函数、过程规范

B.7可测试性规范

B.8程序效率规范

B.9质量保证规范

B.10代码编辑、编译、审查规范

B.11代码测试、维护规范

B.12宏定义规范

附录CPCLINT的Options定义

C.1第一类告警

C.2第二类告警

C.3第三类告警

C.4Options.Int

作者简介

编辑推荐

作者寄语

电子资料

www.luweidong.cn

下一个