第1 章 自动化测试基础 .................................................................................... 1
         1.1 软件测试分类 ........................................................................................................ 1
         1.2 分层的自动化测试 ................................................................................................ 6
         1.3 什么样的项目适合自动化测试 ............................................................................ 9
         1.4 自动化测试及工具简述 ...................................................................................... 10
         1.5 Selenium 工具介绍 .............................................................................................. 11
         1.6 前端技术介绍 ...................................................................................................... 14
         1.7 前端工具介绍 ...................................................................................................... 16
         1.8 开发语言的选择 .................................................................................................. 19
         第2 章 测试环境搭建 .......................................................................................... 21
         2.1 Windows 下的环境搭建 ...................................................................................... 21
         2.1.1 安装Python .............................................................................................. 22
         2.1.2 安装setuptools 与pip .............................................................................. 24
         2.1.3 安装Selenium .......................................................................................... 26
         2.1.4 ActivePython ............................................................................................ 26
         2.2 Ubuntu 下的环境搭建 ......................................................................................... 28
         2.3 使用IDLE 编写Python ....................................................................................... 29
         2.4 编写第一个自动化脚本 ...................................................................................... 32
         2.5 安装浏览器驱动 .................................................................................................. 34
         2.6 不同编程语言下使用WebDriver ........................................................................ 35
         第3 章 Python 基础 ................................................................................................ 37
         3.1 Python 哲学 .......................................................................................................... 37
         3.2 输出与输入 .......................................................................................................... 39
         3.2.1 print 打印 .................................................................................................. 40
         3.2.2 input 输入 ................................................................................................. 41
         3.2.3 引号与注释 .............................................................................................. 41
         3.3 分支与循环 .......................................................................................................... 43
         3.3.1 if 语句 ....................................................................................................... 43
         3.3.2 for 语句 .................................................................................................... 45
         3.4 数组与字典 .......................................................................................................... 47
         3.4.1 数组 .......................................................................................................... 47
         3.4.2 字典 .......................................................................................................... 47
         3.5 函数、类和方法 .................................................................................................. 49
         3.5.1 函数 .......................................................................................................... 49
         3.5.2 类和方法 .................................................................................................. 50
         3.6 模组 ...................................................................................................................... 52
         3.6.1 引用模块 .................................................................................................. 52
         3.6.2 模块调用 .................................................................................................. 55
         3.6.3 跨目录模块调用 ...................................................................................... 56
         3.6.4 进一步讨论跨目录模块调用 .................................................................. 56
         3.7 异常 ...................................................................................................................... 60
         3.7.1 认识异常 .................................................................................................. 60
         3.7.2 更多异常用法 .......................................................................................... 64
         3.7.3 抛出异常 .................................................................................................. 66
         本章小结 ....................................................................................................................... 66
         第4 章 WebDriver API ............................................................................................... 68
         4.1 从定位元素开始 .................................................................................................. 68
         4.1.1 id 定位 ...................................................................................................... 72
         4.1.2 name 定位 ................................................................................................ 73
         4.1.3 class 定位 ................................................................................................. 73
         4.1.4 tag 定位 .................................................................................................... 73
         4.1.5 link 定位 ................................................................................................... 73
         4.1.6 partial link 定位 ........................................................................................ 74
         4.1.7 XPath 定位 ............................................................................................... 75
         4.1.8 CSS 定位 .................................................................................................. 78
         4.1.9 用By 定位元素 ........................................................................................ 82
         4.2 控制浏览器 .......................................................................................................... 83
         4.2.1 控制浏览器窗口大小 .............................................................................. 83
         4.2.2 控制浏览器后退、前进 .......................................................................... 84
         4.2.3 模拟浏览器刷新 ...................................................................................... 85
         4.3 简单元素操作 ...................................................................................................... 86
         4.3.1 126 邮箱登录 ........................................................................................... 86
         4.3.2 WebElement 接口常用方法 ..................................................................... 87
         4.4 鼠标事件 .............................................................................................................. 89
         4.5 键盘事件 .............................................................................................................. 92
         4.6 获得验证信息 ...................................................................................................... 93
         4.7 设置元素等待 ...................................................................................................... 95
         4.7.1 显式等待 .................................................................................................. 95
         4.7.2 隐式等待 .................................................................................................. 98
         4.7.3 sleep 休眠方法 ......................................................................................... 99
         4.8 定位一组元素 .................................................................................................... 100
         4.9 多表单切换 ........................................................................................................ 104
         4.10 多窗口切换 ...................................................................................................... 106
         4.11 警告框处理 ...................................................................................................... 108
         4.12 上传文件 .......................................................................................................... 110
         4.12.1 send_keys 实现上传 ............................................................................. 110
         4.12.2 AutoIt 实现上传 ................................................................................... 111
         4.13 下载文件 .......................................................................................................... 116
         4.14 操作Cookie ...................................................................................................... 117
         4.15 调用JavaScript ................................................................................................. 120
         4.16 处理HTML5 的视频播放 ............................................................................... 123
         4.17 窗口截图 .......................................................................................................... 124
         4.18 关闭窗口 .......................................................................................................... 125
         4.19 验证码的处理 .................................................................................................. 125
         4.20 WebDriver 原理 ................................................................................................ 128
         本章小结 ..................................................................................................................... 130
         第5 章 自动化测试模型 ................................................................................. 132
         5.1 自动化测试模型介绍 ........................................................................................ 133
         5.1.1 线性测试 ................................................................................................ 133
         5.1.2 模块化驱动测试 .................................................................................... 134
         5.1.3 数据驱动测试 ........................................................................................ 134
         5.1.4 关键字驱动测试 .................................................................................... 136
         5.2 模块化驱动测试实例 ........................................................................................ 138
         5.3 数据驱动测试实例 ............................................................................................ 140
         5.3.1 参数化邮箱登录 .................................................................................... 141
         5.3.2 参数化搜索关键字 ................................................................................ 142
         5.3.3 读取txt 文件 .......................................................................................... 143
         5.3.4 读取csv 文件 ......................................................................................... 144
         5.3.5 读取xml 文件 ........................................................................................ 146
         本章小结 ..................................................................................................................... 150
         第6 章 Selenium IDE .............................................................................. 151
         6.1 Selenium IDE 安装 ............................................................................................. 151
         6.1.1 在线安装 ................................................................................................ 151
         6.1.2 下载插件安装 ........................................................................................ 153
         6.2 Selenium IDE 界面介绍 ..................................................................................... 154
         6.3 创建测试用例 .................................................................................................... 155
         6.3.1 录制脚本 ................................................................................................ 155
         6.3.2 编辑脚本 ................................................................................................ 156
         6.4 Selenium IDE 命令 ............................................................................................. 159
         6.5 断言与验证 ........................................................................................................ 162
         6.5.1 断言 ........................................................................................................ 164
         6.5.2 验证 ........................................................................................................ 165
         6.6 等待与变量 ........................................................................................................ 167
         6.6.1 等待 ........................................................................................................ 167
         6.6.2 变量 ........................................................................................................ 167
         本章小结 ............................................................................................... 169
         第7 章 unittest 单元测试框架 ........................................................... 170
         7.1 认识unittest........................................................................................................ 171
         7.1.1 认识单元测试 ........................................................................................ 171
         7.1.2 重要的概念 ............................................................................................ 174
         7.1.3 断言方法 ................................................................................................ 176
         7.1.4 组织单元测试用例 ................................................................................ 181
         7.1.5 discover 更多测试用例 .......................................................................... 184
         7.2 关于unittest 还需要知道的 ............................................................................... 187
         7.2.1 用例执行的顺序 .................................................................................... 188
         7.2.2 执行多级目录的用例 ............................................................................ 190
         7.2.3 跳过测试和预期失败 ............................................................................ 191
         7.2.4 fixtures .................................................................................................... 193
         7.3 带unittest 的脚本分析 ....................................................................................... 195
         7.4 编写Web 测试用例 ........................................................................................... 200
         本章小结 ..................................................................................................................... 203
         第8 章 自动化测试高级应用 ................................................................................... 204
         8.1 HTML 测试报告 ................................................................................................ 204
         8.1.1 修改HTMLTestRunner .......................................................................... 205
         8.1.2 生成HTML 测试报告 ........................................................................... 206
         8.1.3 更易读的测试报告 ................................................................................ 208
         8.1.4 测试报告文件名 .................................................................................... 209
         8.1.5 项目集成测试报告 ................................................................................ 212
         8.2 自动发邮件功能 ................................................................................................ 213
         8.2.1 发送HTML 格式的邮件 ....................................................................... 216
         8.2.2 发送带附件的邮件 ................................................................................ 217
         8.2.3 查找最新的测试报告 ............................................................................ 218
         8.2.4 整合自动发邮件功能 ............................................................................ 219
         8.3 Page Object 设计模式 ....................................................................................... 221
         8.3.1 认识Page Object .................................................................................... 221
         8.3.2 Paget Object 实例 ................................................................................... 223
         本章小结 ..................................................................................................................... 228
         第9 章 Selenium Grid2 ................................................................................. 229
         9.1 Selenium Server 环境配置 ................................................................................. 229
         9.2 Selenium Grid 工作原理 .................................................................................... 233
         9.3 Remote 应用 ....................................................................................................... 236
         9.3.1 WebDriver 驱动分析 .............................................................................. 237
         9.3.2 Remote 实例 ........................................................................................... 243
         9.3.3 参数化平台及浏览器 ............................................................................ 243
         9.4 WebDriver 驱动 .................................................................................................. 246
         9.4.1 Edge 浏览器 ........................................................................................... 249
         9.4.2 Opera 浏览器 ......................................................................................... 250
         9.4.3 Safari 浏览器 .......................................................................................... 251
         9.4.4 HtmlUnit 模式 ........................................................................................ 251
         9.4.5 PhantomJS 模式 ..................................................................................... 252
         本章小结 ..................................................................................................................... 254
         第10 章 Python 多线程 ............................................................................................. 255
         10.1 单线程的时代 .................................................................................................. 256
         10.2 多线程技术 ...................................................................................................... 258
         10.2.1 threading 模块 ...................................................................................... 258
         10.2.2 优化线程的创建 .................................................................................. 260
         10.2.3 创建线程类 .......................................................................................... 262
         10.3 多进程技术 ...................................................................................................... 263
         10.3.1 multiprocessing 模块 ............................................................................ 263
         10.3.2 Pipe 和Queue ....................................................................................... 266
         10.4 应用于自动化测试 .......................................................................................... 268
         10.4.1 多线程执行测试用例 .......................................................................... 269
         10.4.2 多线程分布式执行测试用例 .............................................................. 270
         本章小结 ..................................................................................................................... 272
         第11 章 自动化测试项目实战 ..................................................................................... 273
         11.1 自动化测试用例设计 ....................................................................................... 273
         11.1.1 手工测试用例与自动化测试用例 ....................................................... 273
         11.1.2 测试类型 .............................................................................................. 275
         11.1.3 自动化测试用例编写原则 .................................................................. 276
         11.2 BBS 社区项目实战 .......................................................................................... 277
         11.2.1 准备工作 .............................................................................................. 277
         11.2.2 项目结构介绍 ...................................................................................... 278
         11.2.3 编写公共模块 ...................................................................................... 281
         11.2.4 编写Page Object .................................................................................. 283
         11.2.5 编写测试用例 ...................................................................................... 286
         11.2.6 执行测试用例 ...................................................................................... 289
         本章小结 ..................................................................................................................... 291
         第12 章 BDD 框架之Lettuce 入门 ........................................................................... 292
         12.1 什么是BDD ..................................................................................................... 292
         12.2 安装Lettuce ..................................................................................................... 294
         12.3 阶乘的例子 ...................................................................................................... 295
         12.3.1 什么是阶乘 .......................................................................................... 295
         12.3.2 编写BDD 实现 .................................................................................... 296
         12.3.3 添加测试场景 ...................................................................................... 300
         12.3.4 Lettuce 目录结构与执行过程 ............................................................. 303
         12.4 Lettuce_webdriver 自动化测试 ....................................................................... 303
         本章小结 ..................................................................................................................... 308
         (第13 章和第14 章内容可到博文视点网站免费下载)
         第13 章 GitHub 托管项目 ....................................................................................... 309
         13.1 注册与安装 ...................................................................................................... 310
         13.1.1 注册GitHub ......................................................................................... 310
         13.1.2 安装Git ................................................................................................ 310
         13.1.3 建立连接 .............................................................................................. 311
         13.2 Git/GitHub 基本使用 ....................................................................................... 314
         13.2.1 GitHub 创建项目 ................................................................................. 314
         13.2.2 本地创建项目 ...................................................................................... 315
         13.2.3 克隆项目 .............................................................................................. 318
         13.2.4 更新项目 .............................................................................................. 319
         本章小结 ..................................................................................................................... 323
         第14 章 持续集成Jenkins 入门 ............................................................................ 324
         14.1 环境搭建 .......................................................................................................... 325
         14.2 创建任务 .......................................................................................................... 328
         14.3 运行构建 .......................................................................................................... 333
         14.4 定时执行构建 .................................................................................................. 335
         本章小结 ..................................................................................................................... 338
      · · · · · ·     (
收起)