目录
第 1章 白盒测试基础知识 1
1.1 白盒测试简介 2
1.1.1 白盒测试的定义 2
1.1.2 与黑盒测试的区别 2
1.2 白盒测试的分类 2
1.2.1 单元测试 3
1.2.2 集成测试 4
第 2章 单元测试 5
2.1 已有的单元测试方法简介 6
2.1.1 代码走查法 6
2.1.2 插桩法 6
2.1.3 逻辑覆盖法 7
2.2 以往单元测试方法的弊端 11
2.3 以“二八定律”为目标的单元测试指导思想 11
2.4 基于“二八定律”的单元测试指导思想的最佳实践 12
2.4.1 测试步骤 12
2.4.2 单元测试案例简介 12
2.4.3 测试用例 13
第3章 单元测试框架JUnit 16
3.1 JUnit安装 17
3.2 JUnit关键技术讲解 21
3.2.1 注解的使用 21
3.2.2 参数化测试 23
3.2.3 超时测试 25
3.2.4 异常测试 26
3.3 JUnit实现单元测试案例 26
第4章 集成测试 30
4.1 集成测试基础及策略 31
4.1.1 集成测试简介 31
4.1.2 常用集成测试策略 32
4.1.3 以“二八定律”为目标的集成测试指导思想 37
4.1.4 集成测试过程 38
4.2 以“二八定律”为目标的集成测试案例 39
4.2.1 集成测试之静态测试 39
4.2.2 集成测试之动态测试 41
4.2.3 指导思想与其他策略对比 44
4.2.4 集成测试之Mock的应用 45
第5章 使用Mock实现集成测试 46
5.1 Mock简介 47
5.1.1 什么是Mock 47
5.1.2 Mock与Stub 48
5.2 Mock对象与真实对象 49
5.3 Mock的适用范围 52
5.4 Mockito简介 52
5.4.1 为什么选择Mockito 52
5.4.2 安装Mockito依赖jar包 53
5.4.3 使用Mockito创建Mock对象 53
5.4.4 验证行为 54
5.4.5 模拟返回结果 55
5.4.6 模拟异常 55
5.4.7 监控真实对象 56
5.5 Mock实例 56
第6章 黑盒测试的概述 58
6.1 黑盒测试 59
黑盒测试的概念 59
6.2 功能测试 59
6.2.1 功能测试方法简介 59
6.2.2 等价类划分法 59
6.2.3 边界值分析法 61
6.2.4 其他功能测试方法简介 62
6.3 功能测试指导思想 62
6.3.1 过往功能测试指导思想的弊端 62
6.3.2 以“二八定律”为目标的功能测试指导思想 63
6.3.3 根据“二八定律”的指导思想设计用例的步骤 64
6.4 基于“二八定律”的功能测试指导思想的最佳实践 65
6.4.1 案例简介 65
6.4.2 画流程图 65
6.4.3 划分模块,进行等价类划分,形成初始等价类表 66
6.4.4 边界值分析,补充完善等价类表 67
6.4.5 由等价类表得到改良流程图 67
6.4.6 代入数据,形成用例 69
第7章 自动化功能测试 72
7.1 功能测试与自动化 73
7.1.1 自动化功能测试简介 73
7.1.2 手工测试的优劣 74
7.1.3 自动化功能测试类型 74
7.1.4 自动化功能测试流程 75
7.1.5 自动化测试原理 75
7.2 自动化测试工具QTP 76
7.2.1 QTP技术简介 76
7.2.2 自动化工具对比 76
7.2.3 测试方向 78
7.2.4 QTP的安装配置 78
7.2.5 QTP的录制和回放 81
7.2.6 增强脚本功能 84
7.2.7 QTP数据化操作 91
7.2.8 QTP描述性编程 95
7.2.9 QTP案例实测 97
7.3 Selenium简介 108
7.3.1 Selenium的功能 108
7.3.2 Selenium的特色 108
7.3.3 Selenium的组件 108
第8章 性能测试基础 109
8.1 什么是性能测试 110
8.2 性能测试的分类 110
8.3 性能测试的应用场景 111
8.4 性能测试的基本概念 111
8.5 性能测试工具的发展与开源性能测试的优势 113
第9章 JMeter基础 114
9.1 JMeter简介 115
9.1.1 JMeter的主要特点 115
9.1.2 JMeter与商业测试工具(LoadRunner)对比 115
9.2 JMeter的安装 116
9.3 JMeter的测试元件 117
10 JMeter实战 119
10.1 Web性能测试 120
10.1.1 创建测试计划 120
10.1.2 测试结果分析 124
10.2 Socket性能测试 126
10.2.1 创建测试计划 126
10.2.2 测试结果分析 129
11 Web页面测试 130
11.1 用户界面测试 131
11.1.1 用户界面简介 131
11.1.2 用户界面测试简介 131
11.1.3 用户界面测试的目标 131
11.2 Web页面测试 131
11.2.1 Web页面测试简介 131
11.2.2 浏览器与分辨率兼容性简介 131
11.2.3 Web页面兼容性测试目标 132
11.2.4 Web页面测试准则 132
11.3 Web页面自动化测试工具 136
11.3.1 Selenium简介 136
11.3.2 环境配置 136
11.3.3 自动化页面兼容性测试 136
11.3.4 自动化页面分辨率测试 139
第 12章 软件测试管理基础 141
12.1 软件测试管理简介 142
12.1.1 软件测试管理的概念 142
12.1.2 测试管理的内容 142
12.1.3 测试管理的实施 143
12.2 软件测试需求管理 144
12.2.1 测试需求的获取与分析 144
12.2.2 测试需求状态管理 145
12.2.3 测试需求变更管理 145
12.2.4 测试需求跟踪管理 146
12.2.5 测试需求文档版本管理 146
12.3 软件测试文档管理 146
12.3.1 测试文档概述 146
12.3.2 测试文档的重要性 148
12.3.3 测试文档的管理 149
12.3.4 测试文档模板简介 150
12.4 软件测试缺陷管理 156
12.4.1 软件测试缺陷概述 156
12.4.2 软件测试缺陷的状态 157
12.4.3 软件测试缺陷的严重性 158
12.4.4 软件测试缺陷的优先级 158
12.4.5 软件测试缺陷的管理过程及方法 159
13.1 测试管理工具简介 162
13.2 常用测试管理工具 162
13.2.1 TestManager 162
13.2.2 ClearQuest 163
13.2.3 Application Lifecycle Management(ALM) 163
13.2.4 TestCenter 164
13.2.5 TestLink… ………………… 164
13.2.6 Mantis… …………………… 164
13.2.7 Bugzilla……………………… 165
13.3 TestLink与Mantis的优越性… … 165
4
目录
14 TestLink与Mantis案例实战 166
14.1 TestLink的安装与配置 167
14.2 TestLink功能分析 169
14.3 Mantis的安装与配置 171
14.4 TestLink与Mantis集成 171
14.5 TestLink与Mantis实战 173
14.5.1 TestLink的使用 173
14.5.2 Mantis的使用 195
14.5.3 TestLink与Mantis集成使用 203