《Selenium WebDriver 3.0自动化测试框架实战指南》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:吴晓华,王晨昕编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2017
  • ISBN:9787302483175
  • 页数:411 页
图书介绍:主要讲解webdriver开源的web自动化测试工具的原理、api接口实例、unnittest、五大框架实战(行为驱动 分布式测试框架 数据驱动测试框架 关键词驱动测试框架 混合模式测试框架)、常见自动化测试的问题处理

第一篇 基础篇 1

第1章 Selenium简介 1

1.1 Selenium的前世今生 1

1.2 Selenium工具套件介绍 2

1.3 Selenium支持的浏览器和平台 2

1.3.1 Selenium IDE、Selenium 1和Selenium RC支持的浏览器和平台 2

1.3.2 Selenium 2(WebDriver)支持的浏览器 3

1.4 Selenium RC和WebDriver的实现原理 4

1.4.1 Selenium RC的实现原理 4

1.4.2 WebDriver的实现原理 6

1.4.3 Selenium 1.0和WebDriver的特点 6

1.5 Selenium 3的新特性 7

第2章 自动化测试那点事儿 8

2.1 自动化测试目标 8

2.2 管理层的支持 11

2.3 投入产出比 11

2.4 敏捷开发中的自动化测试应用 12

2.5 自动化测试人员分工 14

2.6 自动化测试工具的选择和推广使用 14

2.6.1 自动化测试工具的选择 14

2.6.2 Selenium WebDriver和QTP工具的特点比较 14

2.7 在项目中实施自动化的最佳实践 15

2.8 学习Selenium工具的能力要求 17

第3章 自动化测试辅助工具 18

3.1 安装Firefox浏览器 18

3.2 安装Firebug插件 18

3.3 Firebug插件的使用 20

3.3.1 启动Firebug插件 20

3.3.2 Firebug插件的常用功能 20

3.4 安装FirePath插件 22

3.5 FirePath插件的使用 24

3.5.1 FirePath插件中使用XPath定位方式 24

3.5.2 FirePath插件中使用CSS定位方式 26

3.6 IE浏览器自带的辅助开发工具 28

第4章 Selenium IDE 30

4.1 Selenium IDE的定义 30

4.2 安装Selenium IDE 30

4.2.1 从Selenium官网安装 30

4.2.2 使用离线XPI安装文件安装 32

4.3 Selenium IDE插件界面和功能介绍 33

4.3.1 主界面 33

4.3.2 常用工具栏 34

4.3.3 脚本编辑区域 34

4.4 常用菜单项 34

4.4.1 “文件”菜单 34

4.4.2 “编辑”菜单 35

4.4.3 Actions菜单 35

4.4.4 Option菜单 36

4.5 录制和回放脚本实例 38

4.6 Selenium IDE脚本介绍——Selenese 39

4.7 Selenium IDE的基本命令使用实例 40

4.7.1 waitForText、verifyText和assertText命令 40

4.7.2 storeTitle命令和echo命令 44

4.7.3 openWindow命令和selectWindow命令 44

4.8 从Selenium IDE导出脚本 45

4.8.1 导出脚本文件 45

4.8.2 将Selenium IDE插件中的某行命令导出为Python脚本 48

第5章 搭建Python环境和PyCharm集成开发环境 49

5.1 安装Python并配置Python环境 49

5.1.1 下载并安装Python解释器 49

5.1.2 配置Python环境 50

5.1.3 安装pip 52

5.2 安装Python集成开发环境PyCharm 53

5.3 新建一个Python工程 55

第6章 Selenium3(WebDriver)的安装 58

6.1 在Python中安装WebDriver 58

6.2 第一个WebDriver脚本 59

6.3 各浏览器驱动的使用方法 62

第7章 单元测试框架的使用介绍 63

7.1 单元测试的定义 63

7.2 unittest单元测试框架 63

7.2.1 unittest的定义 63

7.2.2 unittest框架的4个重要概念 63

7.2.3 单元测试加载方法 64

7.2.4 测试用例 64

7.2.5 测试集合 69

7.2.6 按照特定顺序执行测试用例 71

7.2.7 忽略某个测试方法 74

7.2.8 命令行模式执行测试用例 75

7.2.9 批量执行测试模块 77

7.2.10 常用的断言方法 80

7.2.11 使用HTML TestRunner生成HTML测试报告 85

7.3 在unittest中运行第一个WebDriver测试用例 87

第8章 页面元素定位方法 89

8.1 定位页面元素方法汇总 89

8.2 使用ID定位 90

8.3 使用name定位 91

8.4 使用链接的全部文字定位 92

8.5 使用部分链接文字定位 92

8.6 使用HTML标签名定位 93

8.7 使用Class名称定位 94

8.8 使用XPath定位 94

8.8.1 XPath的定义 94

8.8.2 XPath节点 95

8.8.3 XPath定位语法 96

8.8.4 XPath运算符 101

8.9 CSS定位 103

8.9.1 CSS的概念 103

8.9.2 CSS定位语法 103

8.9.3 XPath定位与CSS定位的比较 109

8.10 表格的定位 110

8.10.1 遍历表格所有的单元格 110

8.10.2 定位表格中的某个元素 112

8.10.3 定位表格中的子元素 112

第二篇 实战应用篇 115

第9章 WebDriver的多浏览器测试 115

9.1 使用IE浏览器进行测试 115

9.2 使用Firefox浏览器进行测试 116

9.3 使用Chrome浏览器进行测试 117

第10章 WebDriver API详解 119

10.1 访问某个网址 119

10.2 网页的前进和后退 120

10.3 刷新当前网页 120

10.4 浏览器窗口最大化 120

10.5 获取并设置当前窗口的位置 121

10.6 获取并设置当前窗口的大小 121

10.7 获取页面的Title属性值 122

10.8 获取页面HTML源代码 122

10.9 获取当前页面的URL地址 123

10.10 获取与切换浏览器窗口句柄 123

10.11 获取页面元素的基本信息 124

10.12 获取页面元素的文本内容 125

10.13 判断页面元素是否可见 125

10.14 判断页面元素是否可操作 127

10.15 获取页面元素的属性 128

10.16 获取页面元素的CSS属性值 128

10.17 清空输入框中的内容 128

10.18 在输入框中输入指定内容 129

10.19 单击按钮 130

10.20 双击某个元素 130

10.21 操作单选下拉列表 131

10.21.1 遍历所有选项并打印选项显示的文本和选项值 131

10.21.2 选择下拉列表元素的三种方法 132

10.22 断言单选列表选项值 133

10.23 操作多选的选择列表 133

10.24 操作可以输入的下拉列表(输入的同时模拟按键) 134

10.25 操作单选框 135

10.26 操作复选框 136

10.27 断言页面源码中的关键字 137

10.28 对当前浏览器窗口截屏 138

10.29 拖拽页面元素 138

10.30 模拟键盘单个按键操作 139

10.31 模拟组合按键操作 140

10.31.1 通过WebDriver内建的模块模拟组合键 140

10.31.2 通过第三方模块模拟组合按键 141

10.31.3 通过设置剪贴板实现复制和粘贴 146

10.32 模拟鼠标右键 147

10.33 模拟鼠标左键按下与释放 148

10.34 保持鼠标悬停在某个元素上 149

10.35 判断页面元素是否存在 150

10.36 隐式等待 151

10.37 显式等待 152

10.38 显式等待中期望的场景 154

10.39 使用Title属性识别和操作新弹出的浏览器窗口 157

10.40 通过页面的关键内容识别和操作新浏览器窗口 159

10.41 操作Frame中的页面元素 160

10.42 使用Frame中的HTML源码内容操作Frame 162

10.43 操作IFrame中的页面元素 163

10.44 操作JavaScript的Alert弹窗 165

10.45 操作JavaScript的confirm弹窗 166

10.46 操作JavaScript的prompt弹窗 167

10.47 操作浏览器的Cookie 169

10.48 指定页面加载时间 170

第11章 WebDriver高级应用 172

11.1 使用JavaScript操作页面元素 172

11.2 操作Web页面的滚动条 173

11.3 在Ajax方式产生的浮动框中,单击选择包含某个关键字的选项 174

11.4 结束Windows中浏览器的进程 177

11.5 更改一个页面对象的属性值 178

11.6 无人工干预地自动下载某个文件 181

11.7 无人工干预地自动上传附件 183

11.7.1 使用WebDriver的send_keys方法上传文件 183

11.7.2 模拟键盘操作,实现上传文件 184

11.7.3 使用第三方工具AutoIt上传文件 187

11.8 右键另存为下载文件 192

11.9 操作日期控件 195

11.10 启动带有用户配置信息的Firefox浏览器窗口 196

11.11 UI对象库 199

11.12 操作富文本框 201

11.13 精确比较页面截图图片 207

11.14 高亮显示正在操作的页面元素 210

11.15 浏览器中新开标签页(Tab) 211

11.16 测试过程中发生异常或断言失败时进行屏幕截图 212

11.17 使用日志模块记录测试过程中的信息 215

11.18 封装操作表格的公用类 218

11.19 测试HTML5语言实现的视频播放器 221

11.20 在HTML5的画布元素上进行绘画操作 222

11.21 操作HTML5存储对象 223

11.22 使用Chrome浏览器自动将文件下载到指定路径 225

11.23 修改Chrome设置伪装成手机M站 226

11.24 屏蔽Chrome的--ignore-certificate-errors提示及禁用扩展插件并实现窗口最大化 228

11.25 禁用Chrome浏览器的PDF和Flash插件 229

11.26 禁用IE的保护模式 230

11.27 启动Firefox的同时打开Firebug 231

11.28 禁用Chrome浏览器中的Image加载 233

11.29 禁用Firefox浏览器中的CSS、Flash及Image加载 234

第三篇 自动化测试框架搭建篇 237

第12章 数据驱动测试 237

12.1 数据驱动概述 237

12.2 数据驱动单元测试的环境准备 237

12.3 使用unittest和ddt进行数据驱动 238

12.4 使用数据文件进行数据驱动 240

12.5 使用Excel进行数据驱动测试 247

12.6 使用XML进行数据驱动测试 250

12.7 使用MySQL数据库进行数据驱动测试 254

第13章 行为驱动测试 261

13.1 行为驱动开发和lettuce简介 261

13.2 行为驱动测试的环境准备 262

13.3 第一个英文语言行为驱动测试 263

13.4 通过类模式实现英文行为驱动 266

13.5 lettuce框架的步骤数据表格 269

13.6 使用WebDriver进行英文语言的行为数据驱动测试 272

13.7 使用WebDriver进行中文语言的行为数据驱动测试 275

13.8 批量执行行为驱动用例集 279

13.9 解决中文描述的场景输出到控制台乱码 283

第14章 Selenium Grid的使用 285

14.1 Selenium Grid简介 285

14.2 分布式自动化测试环境准备 286

14.3 Selenium Grid的使用方法 290

14.3.1 远程调用Firefox浏览器进行自动化测试 290

14.3.2 远程调用IE浏览器进行自动化测试 294

14.3.3 远程调用Chrome浏览器进行自动化测试 295

14.3.4 同时支持多个浏览器进行自动化测试 296

14.4 结合unittest完成分布式自动化测试 297

14.5 实现并发的分布式自动化测试 299

第15章 自动化测试框架的搭建及测试实战 303

15.1 自动化测试框架 303

15.2 数据驱动框架及实战 305

15.3 关键字驱动框架及实战 333

15.4 关键字&&数据混合驱动框架及实战 367

第四篇 常见问题和解决方法 405

第16章 自动化测试常见问题和解决方法 405

16.1 如何让WebDriver支持IE 11 405

16.2 解决“Unexpected error launching Internet Explorer.Browserzoom level was set to 75%(或其他百分比)”的错误 407

16.3 解决某些IE浏览器中输入数字和英文特别慢的问题 407

16.4 解决Firefox浏览器的can't access dead object异常 408

16.5 常见异常和解决方法 409