商家名称 | 信用等级 | 购买信息 | 订购本书 |
![]() |
软件测试(第3版) [平装] | ![]() |
|
![]() |
软件测试(第3版) [平装] | ![]() |
《软件测试(第3版)》:国外众多大学采用的优秀教材
理论与实践的完美结合
涵盖软件标准和开发方法的最新进展
作者:(美国)乔根森(Paul C.Jorgensen) 译者:李海峰 马琳
Paul C.Jorgensen博士在其职业生涯的前20年中,主要从事电话交换系统的开发、支持和测试工作。1986年以来,他一直在大学为研究生讲授软件工程课程,先是亚利桑那州立大学,然后在大峡谷州立大学。
第一部分 数学基础
第1章 测试概述
1.1 基本概念
1.2 测试用例
1.3 通过维恩图来考察测试
1.4 构造测试用例
1.4.1 功能测试
1.4.2 结构测试
1.4.3 功能测试与结构测试之争
1.5 错误与故障差异
1.6 测试的层次
参考文献
习题
第2章 程序示例
2.1 通用伪代码
2.2 三角形问题
2.2.1 问题描述
2.2.2 三角形问题的讨论
2.2.3 三角形问题的经典实现
2.2.4 三角形问题的结构化实现
2.3 Next Date函数
2.3.1 问题描述
2.3.2 Next Date函数的讨论
2.3.3 Next Date函数的实现
2.4 佣金问题
2.4.1 问题描述
2.4.2 佣金问题的讨论
2.4.3 佣金问题的实现
2.5 SATM系统
2.5.1 问题描述
2.5.2 SATM系统的讨论
2.6 货币转换器
2.7 雨刷控制器
参考文献
习题
第3章 测试人员的离散数学
3.1 集合论
3.1.1 集合的成员关系
3.1.2 集合的定义方法
3.1.3 空集
3.1.4 集合的维恩图
3.1.5 集合运算
3.1.6 集合关系
3.1.7 集合划分
3.1.8 集合恒等
3.2 函数
3.2.1 定义域与值域
3.2.2 函数的类型
3.2.3 函数复合
3.3 关系
3.3.1 集合之间的关系
3.3.2 单个集合上的关系-
3.4 命题逻辑
3.4.1 逻辑运算符
3.4.2 逻辑表达式
3.4.3 逻辑等价
3.5 概率论
参考文献
习题
第4章 测试人员的图论
4.1 图
4.1.1 节点的度
4.1.2 关联矩阵
4.1.3 邻接矩阵
4.1.4 路径
4.1.5 连通性
4.1.6 压缩图
4.1.7 圈数
4.2 有向图
4.2.1 入度与出度
4.2.2 节点类型
4.2.3 有向图的邻接矩阵
4.2.4 路径与半路径
4.2.5 可达矩阵
4.2.6 n连通性
4.2.7 强分图
4.3 软件测试中常用的图
4.3.1 程序图
4.3.2 有限状态机
4.3.3 Petri网
4.3.4.事件驱动Petri网
4.3.5 状态图
参考文献
习题
第二部分 功能测试
第5章 边界值测试
5.1 边界值分析
5.1.1 边界值分析的拓展
5.1.2 边界值分析的局限性
5.2 健壮性测试
5.3 最坏情况测试
5.4 特殊值测试
5.5 示例
5.5.1 三角形问题的测试用例
5.5.2 Next Date函数的测试用例
5.5.3 佣金问题的测试用例
5.6 随机测试
5.7 边界值测试的原则
习题
第6章 等价类测试
6.1 等价类
6.1.1 弱一般等价类测试
6.1.2 强一般等价类测试
6.1.3 弱健壮等价类测试
6.1.4 强健壮等价类测试
6.2 三角形问题的等价类测试用例
6.3 Next Date函数的等价类测试用例
6.4 佣金问题的等价类测试用例
6.5 原则与注意事项
参考文献
习题
第7章 基于决策表的测试
7.1 决策表
7.2 三角形问题的测试用例
7.3 Next Date函数的测试用例
7.3.1 第一轮尝试
7.3.2 第二轮尝试
7.3.3 第三轮尝试
7.4 佣金问题的测试用例
7.5 原则与注意事项
参考文献
习题
第8章 功能测试回顾
8.1 测试的工作量
8.2 测试的效率
8.3 测试的有效性
8.4 原则
8.5 案例研究
第三部分 结构测试
第9章 路径测试
9.1 DD路径
9.2 测试覆盖指标
9.2.1 基于指标的测试
9.2.2 测试覆盖分析器
9.3 基路径测试
9.3.1 McCabe的基路径方法
9.3.2 McCabe基路径方法的注意事项
9.3.3 McCabe方法的基本复杂度
9.4 原则与注意事项
参考文献
习题
第10章 数据流测试
10.1 定义/使用测试
10.1.1 举例
10.1.2 stocks的定义使用路径
……
第11章 结构测试回顾
第四部分 集成测试和系统测试
第12章 测试的层次
第13章 集成测试
第14章 系统测试
第15章 交互性测试
第五部分 面向对象测试
第16章 面向对象测试的相关问题
第17章 类测试
第18章 面向对象的集成测试
第19章 GUI测试
第20章 面向对象的系统测试
第六部分 新兴测试技术
第21章 探索式测试
第22章 基于模型测试
第23章 测试驱动开发
第24章 全对测试详述
第25章 尾声:软件测试精益求精
版权页:
插图:
在许多测试方面的文献中,名词术语的使用都比较混乱(有时不统一),究其原因,可能是因为测试技术在近几十年中不断地演化进步,而且文献作者所处领域不同也有差异。全书所采用的术语都取自美国IEEE计算机学会颁布的技术标准。我们首先研究几个有用的术语。
·错误(error):人会做错事。错误的同义词是过失(mistake)。编程时出的错称为“bug"。错误很容易传递和放大,比如需求分析方面的错误在系统设计时有可能会被放大,而且在编码时还会被进一步放大。
·故障(fault):故障是错误的后果。更确切地说,故障是错误的具体表现形式,比如文字叙述、数据流图、层次结构图、源代码等。与把编程错误称为bug类似,故障的同义词是缺陷(defect)。故障可能难以捕获。比如,设计人员犯下一个遗漏错误,所导致的故障可能只是在表现上丢掉了一些应有的内容。这里也可以把故障进一步细分为过失故障和遗漏故障。如果在表象中添加了不正确的信息,这是过失故障;而未输入正确的信息,则是遗漏故障。在这两类故障中,遗漏故障更难检测和纠正。
·失效(failure):发生故障会导致失效。失效具有两个很微妙的特征:(1)失效只出现在程序的可执行表现形式中,通常是源代码,确切地说是加载后的目标代码;(2)这样定义的失效只和过失故障有关。那么如何处理遗漏故障所对应的失效呢?进一步说,对于不轻易发生的故障,或者长期不发生的故障,情况又会怎样呢?米开朗基罗(Michelangelo)病毒就是这种故障的一个例子,它只有在3月6日(米开朗基罗生日)才执行。采用代码评审能够通过查找故障来避免失效。实际上,好的代码评审同样能检查出遗漏故障来。
喜欢软件测试(第3版) [平装]请与您的朋友分享,由于版权原因,读书人网不提供图书下载服务