优质代码:软件测试的原则、实践与模式 PDF格式高清电子书免费下载

优质代码:软件测试的原则、实践与模式

作者 【美】Stephen Vance
译者 伍斌
出版社 人民邮电出版社
出版日期 2015-01-01
页数 199
格式 Paper book / ebook (PDF)
ISBN 9787115375582
价格 49
  • 内容简介
  • 图书目录
  • 免费下载

出版信息

ISBN:9787115375582
语言:简体中文
包装/印刷类型:1
开本:16开
出版时间:2015-01-01
页数:199

内容简介

本书讲述如何对所有的软件进行轻松的例行测试,书中为读者提供一些工具——一些实现模式,这些工具几乎可以测试任何代码。本书分为三个部分:第一部分讨论了测试的一些原则和实践,包括首次优质、代码意图、测试攻略和测试与设计之间的关系等;第二部分讨论了有关测试实践方面的一些模式;第三部分展示了两个实例的编程过程。

本书讲述如何对所有的软件进行轻松的例行测试,书中为读者提供一些工具——一些实现模式,这些工具几乎可以测试任何代码。

本书分为三个部分:第 一部分(第 1~5章)讨论了测试的一些原则和实践,包括首 次优质、代码意图、测试攻略和测试与设计之间的关系等;第 二部分(第6~13章)讨论了有关测试实践方面的一些模式,包括测试构造器和getter/setter、处理字符串、封装与覆写、调整代码可见性、测试单例模式、验证错误条件,以及利用各种接缝和测试多线程等;第三部分(第 14~15章)展示了两个实例的编程过程,其中一个是用测试驱动开发方法编写新的Java应用程序WebRetriever,另一个是为一个未写测试的JavaScript开源项目jQuery Timepicker Addon添加测试代码。

本书适合对测试驱动开发有初步了解或实践并想提升测试代码编写技能的程序员和自动化测试工程师阅读,也适合想通过本书在GitHub上的微量提交的代码来学习用测试驱动开发方法编写Java新项目和用测试来驯服JavaScript遗留代码的详细过程的任何读者阅读。

图书目录

目录

第 一部分 测试的原则和实践 1

第 1章 工程、匠艺和首 次优质 2

1.1工程与匠艺 2

1.2 匠艺在首 次优质中的作用 3

1.3 支持软件匠艺的实践 4

测试 6

1.4 在代码检查器的约束下进行单元测试 8

1.5 针对覆盖率的单元测试 9

第 2章 代码的意图 14

2.1 意图都被放到哪里去了? 14

2.2 将意图与实现分离 15

2.3 一个能引发思考的简单例子 16

第3章 从哪里开始 20

3.1 一种测试的方法 20

3.1.1 了解范围 20

3.1.2 测试的概念框架 21

3.1.3 状态和行为测试 23

3.1.4 测试还是不测试 24

3.2 攻略 24

3.2.1 测试“正常路径” 25

3.2.2 测试替代路径 26

3.2.3 测试错误路径 26

3.2.4 测试数据的排列组合 27

3.2.5 对缺陷进行测试 31

第4章 设计和可测试性 32

4.1 关于设计范型 32

4.2 封装和可观察性 32

4.2.1 表示性的封装 33

4.2.2 行为的封装 33

4.2.3 测试的灰度 34

4.2.4 封装、可观察性和可测试性 35

4.3 耦合和可测性 36

第5章 测试的原则 41

5.1 把测试雕琢好 41

5.1.1 将输入关联到输出 42

5.1.2 使用命名约定 43

5.2 避免在生产代码内出现测试代码 44

5.3 通过实现来验证意图 46

5.4 将耦合**小化 46

5.5 要**小的、新的和瞬态fixture 47

5.6 利用现有设施 48

5.7 要完整的验证而不要部分的验证 48

5.8 编写小测试 49

5.9 分离关注点 49

5.10 使用唯 一值 50

5.11 保持简单:删除代码 51

5.12 不要测试框架 51

不要测试生成的代码 52

5.13 有时测试框架 53

第 二部分 测试与可测试性模式 54

第6章 基础知识 55

6.1 bootstrapping构造器 55

6.2 测试简单的getter和setter 58

6.3 共享常量 59

6.4 在局部重新定义 62

6.5 暂时替换 63

6.6 封装和覆写 64

6.7 调整可见性 68

6.8 通过注入的验证 70

第7章 字符串处理 73

7.1 通过包含关系来验证 73

7.2 通过模式来验证 75

7.3 通过值来精 确验证 77

7.4 使用格式化的结果来精 确验证 80

第8章 封装和覆写变化 84

8.1 数据注入 84

8.2 封装循环条件 87

8.3 错误注入 89

8.4 替换协作者 91

8.5 使用现有的无操作类 94

第9章 调整可见性 98

9.1 用包来包装测试 98

9.2 将其分解 100

9.3 更改访问级别 102

9.4 仅用于测试的接口 104

9.5 命名那些尚未命名的 105

9.6 变为friend 106

9.7 通过反射来强制访问 107

9.8 声明范围变更 109

第 10章 间奏:重温意图 111

10.1 测试单例模式 111

10.2 单例的意图 113

10.3 测试的策略 113

10.3.1 测试单例的性质 114

10.3.2 对类的目的进行测试 115

10.4 独具慧眼的意图 118

第 11章 错误条件验证 120

11.1 检查返回值 120

11.2 验证异常类型 120

11.3 验证异常消息 122

11.4 验证异常有效载荷 125

11.5 验证异常实例 128

11.6 有关异常设计的思考 131

第 12章 利用现有接缝 136

12.1 直接调用 136

12.1.1 接口 136

12.1.2 实现 137

12.2 依赖注入 137

12.3 回调、观察者、监听者和通告者 141

12.4 注册表 146

12.5 工厂 148

12.6 日志记录与**后一手的其他设施 150

第 13章 并行性 155

13.1 线程和竞态条件的简介 155

13.1.1 一些历史 155

13.1.2 竞态条件 156

13.1.3 死锁 158

13.2 一个用于重现竞态条件的策略 159

13.3 直接测试线程的任务 162

13.4 通过常见锁来进行同步 165

13.5 通过注入来同步 171

例子:通过日志记录来注入同步 171

13.6 使用监督控制 174

13.7 统计性的验证 177

13.8 调试器API 179

第三部分 实例 182

第 14章 测试驱动的Java 183

14.1 bootstrapping 184

14.2 首要功能 184

14.3 切断网络连接 185

14.4 转移到处理多个网站的情况 187

14.5 幽灵协议 187

14.5.1 死胡同 187

14.5.2spy手艺 188

14.6 执行选项 190

14.7 走向下游 191

14.8 回顾 194

第 15章 遗留的JavaScript代码 196

15.1 准备开始 197

15.2 DOM的统治 198

15.3 在牙膏与测试之上 199

15.4 向上扩展 201

15.5 软件考古学 203

15.6 回顾 204

封底文字 205

点击展开

点击收起

优质代码:软件测试的原则、实践与模式 PDF格式高清电子书免费下载

抱歉,暂无数据!催一下?我有资源 ?

看了 优质代码:软件测试的原则、实践与模式 的用户也看了: