为你推荐
封面页
书名页
版权页
内容简介
作者简介
前言
为什么要写这本书
本书特色
读者对象
本书主要内容
阅读本书的建议
本书配套课件
进一步学习建议
勘误和支持
致谢
目录
绪论
如何学习自动化
自动化项目选型
周期长且需求稳定
功能模块有回归需求
操作场景易于自动化
自动化的正确打开方式
考虑成本效益
选择合适的工具
适当分层测试
提高被测系统的可测性
没有必要的完全自动化
尽可能优化时间
最少步骤进入到被测场景
持续进行集成测试
快速修复失败脚本
及时反馈报告结果
第1章 Selenium基础
1.1 Selenium的历史和分支
1.2 Selenium的特点
1.3 Selenium名词说明
1.3.1 Selenium RC
1.3.2 Selenium Server
1.3.3 Selenium WebDriver
1.3.4 Selenium Client
1.3.5 Selenium Grid
1.3.6 Selenium IDE
1.4 Selenium基本原理
1.5 Selenium环境搭建
1.5.1 Windows环境搭建
1.5.2 Ubuntu环境搭建
1.5.3 MacOS环境搭建
1.6 Selenium调用不同浏览器
1.6.1 调用Firefox浏览器
1.6.2 调用Chrome浏览器
1.6.3 调用IE浏览器
1.6.4 IE浏览器安全机制设置
1.7 Selenium Docker的使用
1.7.1 Docker环境安装
1.7.2 Selenium Docker镜像下载
1.7.3 Docker下运行Selenium脚本
1.8 Selenium 3说明
1.8.1 不再支持Selenium RC
1.8.2 仅支持JDK 1.8.0以上版本
1.8.3 Selenium IDE支持Chrome插件
1.8.4 FireFox需要安装独立驱动
1.8.5 仅支持IE 9.0以上版本
1.8.6 支持微软的Edge浏览器
1.8.7 支持官方的SafariDriver
第2章 Python编程基础
2.1 基础语法
2.1.1 Python语句执行
2.1.2 Python语法格式
2.1.3 Python变量与类型
2.1.4 Python运算符与表达式
2.2 控制语句
2.2.1 if-else语句
2.2.2 for语句
2.2.3 while语句
2.2.4 continue语句
2.2.5 break语句
2.2.6 pass语句
2.3 模块化
2.3.1 函数
2.3.2 类与实例
2.3.3 模块文件
2.3.4 包
2.4 基础数据结构
2.4.1 列表
2.4.2 元组
2.4.3 字典
2.4.4 遍历数据
2.5 输入/输出
2.5.1 命令行输入/输出
2.5.2 文件输入/输出
2.6 内置函数
2.6.1 id函数
2.6.2 dir函数
2.6.3 help函数
2.6.4 type函数
2.6.5 isinstance函数
2.6.6 zip函数
2.6.7 filter函数
2.6.8 map函数
2.6.9 reduce函数
2.7 异常
2.7.1 异常捕获
2.7.2 自定义异常
2.8 魔法特性
2.8.1 列表推导式
2.8.2 迭代器
2.8.3 生成器
2.8.4 闭包
2.8.5 装饰器
2.8.6 内省机制
2.9 并发任务
2.9.1 多进程
2.9.2 多线程
2.9.3 协程
2.10 编解码
2.10.1 源码文件编码
2.10.2 解释器默认编码
2.10.3 外部文件编码
2.10.4 数据库编码
2.10.5 编解码函数
第3章 Web UI自动化基础
3.1 HTML与DOM简介
3.2 学习元素定位方式
3.3 CSS定位技术
3.4 使用工具帮助定位
3.4.1 IE的Developer Tool
3.4.2 Firefox的Web开发者工具
3.4.3 Chrome的开发者工具
3.4.4 Firefox的XPath Checker插件
3.4.5 Chrome的XPath工具
3.4.6 Firefox的CSS插件
3.4.7 Chrome的CSS工具
3.4.8 Firefox的WebDriver Element Locator插件
3.5 Selenium中进行元素定位
3.5.1 获取一个定位元素
3.5.2 获取一组定位元素
3.5.3 匹配非第一个元素
第4章 Selenium IDE
4.1 Selenium IDE安装
4.1.1 Firefox安装
4.1.2 Selenium IDE在线安装
4.1.3 Selenium IDE本地安装
4.2 Selenium IDE功能介绍
4.2.1 Selenium IDE窗口
4.2.2 菜单栏
4.2.3 地址栏
4.2.4 工具栏
4.2.5 用例管理区
4.2.6 用例脚本开发区
4.2.7 信息输出区
4.3 Selenium IDE使用
4.3.1 Selenium IDE录制与回放
4.3.2 Selenium IDE脚本编辑
4.3.3 Selenium IDE元素定位
4.3.4 Selenium IDE匹配模式
4.3.5 Selenium IDE脚本转换
第5章 Selenium常规对象接口
5.1 浏览器对象操作
5.1.1 查找元素方法
5.1.2 浏览器窗口方法
5.1.3 Cookie处理方法
5.2 WebElement对象操作
5.3 文本框对象操作
5.4 按钮对象操作
5.5 下拉列表对象操作
5.6 链接对象操作
第6章 Web UI自动化特殊场景处理
6.1 处理多窗口测试场景
6.2 处理浏览器弹框场景
6.2.1 Alert对象及方法
6.2.2 优雅地处理Alert弹框
6.3 Selenium进行键盘鼠标操作
6.3.1 键盘操作
6.3.2 鼠标操作
6.4 非Web控件的操作实现
6.5 Selenium执行JavaScript及操作DOM
6.6 Selenium截屏操作
第7章 UnitTest单元测试框架
7.1 常规使用方式
7.2 测试套件使用
7.3 TestLoader的使用
7.4 UnitTest加载流程
第8章 分层框架设计与实现
8.1 数据驱动层
8.1.1 文件存储
8.1.2 数据库存储
8.2 定位符驱动层
8.2.1 本地文件存储
8.2.2 远程服务存储
8.3 页面操作层
8.4 业务逻辑层
8.4.1 公共业务
8.4.2 常规业务
8.5 结果驱动层
8.5.1 日志Logger记录
8.5.2 自定义Logger记录
8.5.3 邮件通知结果
8.6 异常处理层
8.6.1 程序异常处理
8.6.2 断言异常处理
8.6.3 自定义异常类
第9章 测试脚本部署
9.1 使用SVN管理测试脚本
9.1.1 SVN服务安装
9.1.2 SVN客户端安装
9.1.3 SVN使用简介
9.1.4 SVN操作规范
9.2 远程执行用例场景
9.3 Selenium Grid模块及搭建
9.3.1 Selenium Grid环境搭建
9.3.2 Selenium Grid使用
9.4 持续集成的自动化测试
第10章 Web API介绍
10.1 HTTP简介
10.1.1 HTTP请求报文
10.1.2 HTTP响应报文
10.2 Web API介绍
10.3 REST API介绍
第11章 Web API自动化基础
11.1 正则表达式模块学习
11.1.1 字符搜索
11.1.2 字符替换和分割
11.1.3 表达式修饰符
11.1.4 其他事项
11.2 XML读写模块的学习
11.2.1 读取XML文档
11.2.2 写入XML文档
11.3 JSON模块的学习
11.3.1 JSON串生成
11.3.2 JSON串解析
11.4 MD5、BASE64编解码
11.4.1 BASE64编解码
11.4.2 MD5加密
11.4.3 数据序列化
第12章 Python发送HTTP请求
12.1 HTTP请求发送
12.1.1 requests模块安装
12.1.2 发送GET请求
12.1.3 发送POST请求
12.1.4 发送multipart/form-data请求
12.1.5 发送其他类型请求
12.2 HTTP请求认证
12.2.1 HTTP Basic Auth
12.2.2 HTTP Digest Auth
12.2.3 OAuth认证
12.2.4 自定义认证
12.3 URL的编解码
12.4 HTTP响应内容验证
12.4.1 状态码验证
12.4.2 响应头验证
12.4.3 响应体验证
12.5 多线程发送请求
12.5.1 函数式多线程
12.5.2 类继承式多线程
第13章 API工具设计与实现
13.1 最简单的API工具
13.1.1 请求方法设置
13.1.2 请求头设置
13.1.3 支持文件上传
13.1.4 简单结果验证
13.2 测试数据读取
13.2.1 测试数据格式
13.2.2 数据存储方式
13.2.3 实现数据读取
13.3 测试数据用例化
13.3.1 用例基本信息
13.3.2 用例套件信息
13.3.3 用例模板信息
13.4 测试流程控制
13.4.1 钩子函数接口设计
13.4.2 钩子函数接口调用
13.4.3 钩子函数接口实现
13.5 测试结果验证
13.5.1 完全匹配
13.5.2 内容包含
13.5.3 正则匹配
13.5.4 JSONPath
13.6 测试数据记录
13.6.1 结果记录
13.6.2 日志记录
第14章 集成为Web服务
14.1 Web服务简介
14.1.1 Web框架选择
14.1.2 DEMO实现
14.1.3 框架开发学习
14.2 Web上启动用例执行
14.2.1 运行参数接收
14.2.2 测试请求处理
14.3 Web上查看测试结果
14.3.1 任务列表页
14.3.2 用例结果页
14.4 持续集成的API自动化测试
14.4.1 用例集保存
14.4.2 用例集执行
第15章 HTTP Mock开发
15.1 HTTP Mock介绍
15.2 HTTP Mock分析
15.3 HTTP Mock实现
15.3.1 根据请求URL过滤
15.3.2 根据请求方法过滤
15.3.3 根据请求头过滤
15.3.4 根据请求数据过滤
参考文献
结束语
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜