第1 章 自动化测试基础 . 1
1.1 分层的自动化测试 1
1.2 适合自动化测试的项目 3
1.3 如何学习UI 自动化测试 4
1.4 Selenium 简介 4
1.5 appium 简介 . 8
第2 章 测试环境搭建 10
2.1 安装Python 10
2.2 安装Selenium 12
2.3 第一个Selenium 自动化测试脚本 . 12
2.4 浏览器驱动 13
第3 章 Python 基础 . 16
3.1 Python 哲学 16
3.2 输出 18
3.3 分支与循环 20
3.4 列表、元组与字典 22
3.5 函数、类和方法 25
3.6 模组 27
3.7 异常 34
3.8 新手常犯的错误 38
第4 章 WebDriver API 40
4.1 从定位元素开始 40
4.2 控制浏览器 52
4.3 WebDriver 中的常用方法 53
4.4 鼠标操作 55
4.5 键盘操作 57
4.6 获得验证信息 58
4.7 设置元素等待 59
4.8 定位一组元素 63
4.9 多表单切换 64
4.10 多窗口切换 65
4.11 警告框处理 67
4.12 下拉框处理 69
4.13 上传文件 70
4.14 下载文件 72
4.15 操作Cookie 74
4.16 调用JavaScript . 75
4.17 处理HTML5 视频播放 . 77
4.18 滑动解锁 79
4.19 窗口截图 82
4.20 关闭窗口 83
第5 章 自动化测试模型 . 84
5.1 基本概念 84
5.2 自动化测试模型 85
5.3 模块化与参数化 86
5.4 读取数据文件 89
第6 章 unittest 单元测试框架 96
6.1 认识unittest 97
6.2 关于unittest 还需要知道的 . 108
6.2.1 测试用例的执行顺序 108
6.2.2 执行多级目录的测试用例 110
6.2.3 跳过测试和预期失败 111
6.2.4 Fixtures . 113
6.3 编写Web 自动化测试 . 114
第7 章 unittest 扩展 . 118
7.1 HTML 测试报告 118
7.2 数据驱动应用 124
7.3 自动发送邮件功能 134
第8 章 Page Object 140
8.1 认识Page Object 140
8.2 实现Paget Object . 141
8.2.1 Paget Object 简单实例 . 142
8.2.2 改进Paget Object 封装 143
8.3 poium 测试库 . 146
第9 章 pytest 单元测试框架 150
9.1 pytest 简单例子 150
9.2 pytest 的基本使用方法 152
9.3 pytest 扩展 163
9.4 构建Web 自动化测试项目 . 166
9.4.1 项目结构介绍 166
9.4.2 主要代码实现 168
9.4.3 测试用例的运行与测试报告 173
第10 章 Selenium Grid . 176
10.1 Selenium Grid 介绍 . 176
10.1.1 Selenium Server 环境配置 . 176
10.1.2 Selenium Grid 工作原理 178
10.2 Selenium Grid 应用 180
第11 章 Jenkins 持续集成 . 187
11.1 下载Tomcat 188
11.2 下载Jenkins . 189
11.3 安装配置Jenkins . 190
11.4 Jenkins 的基本使用 192
11.5 Selenium 自动化项目配置 197
第12 章 appium 的介绍与安装 210
12.1 appium 介绍 . 210
12.2 appium 环境搭建 . 215
12.2.1 Android Studio . 216
12.2.2 Android 模拟器 219
12.2.3 appium Desktop 222
12.2.4 Python Client 223
12.2.5 第一个appium 测试 223
第13 章 appium 基础 226
13.1 Desired Capabilities 226
13.2 控件定位 228
13.3 appium 的常用API 235
13.4 appium Desktop 243
13.4.1 准备工作 243
13.4.2 控件定位 245
13.4.3 脚本录制 246
第14 章 appium 测试实例 . 249
14.1 appium 应用测试 . 249
14.1.1 原生应用测试 249
14.1.2 移动Web 应用测试 . 250
14.1.3 混合应用测试 252
14.2 App 测试实战 254