失效链接处理 |
Selenium+自动化测试完全指南:基于Python 赵卓 PDF 下载
下载地址:
版权归出版社和原作者所有,链接已删除,请购买正版
用户下载说明:
电子版仅供预览,下载后24小时内务必删除,支持正版,喜欢的请购买正版书籍:
https://product.dangdang.com/29238631.html
相关截图: ![]() 资料简介: 本书共有19章。第1~10章介绍Selenium IDE、Selenium WebDriver、Selenium Grid、Appium等工具的应用。第11~16章介绍自动化测试实战的组织及模式优化,包括如何通过Selenium进行功能测试和非功能测试,如何完善功能测试驱动,如何设置功能测试的逻辑组织结构,如何优化功能测试的物理组织结构,如何增强功能测试的运行反馈机制。第17~19章讲述自动化实战的落实及实践优化。 本书适合测试人员和开发人员阅读。 资料目录: 第 一部分 Selenium工具组 第 1章 Selenium自动化测试概览 3 1.1 自动化测试简介 3 1.2 Selenium简介 5 1.3 Selenium 4与Selenium 3的异同 6 1.4 Selenium工具集 7 1.4.1 Selenium IDE 7 1.4.2 Selenium WebDriver 8 1.4.3 Selenium Grid 8 1.4.4 Appium 8 第 2章 Selenium IDE的基本运用 10 2.1 Selenium IDE的安装 10 2.2 Selenium IDE的基本操作 12 2.2.1 录制与回放 13 2.2.2 保存回放文件 17 2.2.3 添加测试验证 18 2.2.4 导出测试脚本 20 2.2.5 其他运用 21 第3章 Selenium IDE的高级运用 23 3.1 Selenium IDE支持的5类命令 23 3.1.1 界面操作类命令 23 3.1.2 测试验证类命令 26 3.1.3 执行等待类命令 27 3.1.4 流程控制类命令 28 3.1.5 测试辅助类命令 29 3.2 测试套件管理 31 3.3 命令行运行器 33 3.3.1 安装并运行各个浏览器 34 3.3.2 常用参数设置 35 第4章 Selenium WebDriver的基本运用 38 4.1 Selenium WebDriver的安装与配置 38 4.1.1 配置驱动程序 38 4.1.2 配置环境变量 42 4.1.3 安装绑定语言 42 4.2 选择浏览器开始测试 43 4.3 浏览器窗口的基本操作 44 4.3.1 浏览器导航操作 44 4.3.2 浏览器窗口操作 45 4.3.3 获取浏览器信息 45 4.4 查找页面元素 47 4.4.1 按id属性查找 47 4.4.2 按name属性查找 48 4.4.3 按class属性查找 48 4.4.4 按链接文本查找 48 4.4.5 按链接文本进行模糊查找 50 4.4.6 按标签类型查找 50 4.4.7 按XPath查找 50 4.4.8 按CSS选择器查找 53 4.4.9 通过By对象按动态条件查找 55 4.4.10 查找元素集合 56 4.4.11 嵌套查找 57 4.5 页面元素的基本操作 57 4.5.1 单击元素 57 4.5.2 向元素输入内容或上传附件 59 4.5.3 清空元素的内容 60 4.5.4 提交表单元素 60 4.5.5 下拉框元素的选项操作 61 4.6 获取页面元素的内容 63 4.6.1 获取元素的基本属性 63 4.6.2 获取元素的HTML属性、 DOM属性及CSS属性 65 4.6.3 获取元素的位置与大小 69 4.6.4 获取下拉框元素的选项 70 4.7 处理浏览器弹出框 71 4.7.1 弹出框的确认与取消 73 4.7.2 获取弹出框的文本 73 4.7.3 向弹出框中输入内容 74 4.8 多网页切换操作 75 4.8.1 多浏览器窗口的切换 75 4.8.2 IFrame切换 77 4.9 结束WebDriver会话 78 第5章 Selenium WebDriver的高级运用 79 5.1 深入了解Selenium的等待机制 79 5.1.1 页面级等待机制 79 5.1.2 元素级等待机制—强制等待 80 5.1.3 元素级等待机制—隐式等待 81 5.1.4 元素级等待机制—显式等待 82 5.1.5 脚本级等待机制 87 5.2 对键盘和鼠标进行精准模拟 87 5.2.1 ActionChains——操作链 87 5.2.2 ActionChains支持的全部 鼠标与键盘操作设置 89 5.2.3 模拟复杂鼠标操作 案例——拖放操作 91 5.2.4 模拟复杂键盘操作 案例——组合键 93 5.3 操作浏览器Cookie 95 5.3.1 读取Cookie 95 5.3.2 新增和删除Cookie 96 5.4 对浏览器窗口或元素截图 97 5.4.1 对浏览器窗口截图 97 5.4.2 对元素截图 98 5.5 为Selenium操作附加自定义事件 99 5.5.1 附加WebDriver级自定义事件 99 5.5.2 附加元素级自定义事件 102 5.6 浏览器启动参数设置 103 5.6.1 WebDriver实例化参数 103 5.6.2 WebDriver启动选项设置 106 5.7 通过JavaScript执行器进行深度 操作 108 5.7.1 执行同步脚本——返回值与 类型转换 109 5.7.2 执行同步脚本——传入参数 110 5.7.3 执行同步脚本——复杂案例: 引入JavaScript库处理HTML5 拖曳 111 5.7.4 执行异步脚本 114 第6章 Selenium Grid的基本运用 117 6.1 Selenium Grid各组件的部署 118 6.1.1 部署Selenium Grid Hub 119 6.1.2 部署Selenium Grid Node 120 6.2 在Selenium Grid上运行测试 122 6.2.1 创建远程实例运行测试 122 6.2.2 远程实例管理 124 6.2.3 独立模式 125 第7章 Selenium Grid的高级运用 126 7.1 Selenium Grid详细参数设置 126 7.1.1 Hub与Node的功能参数设置 128 7.1.2 WebDriver浏览器参数设置 131 7.2 使用Selenium Grid进行分布式 并行测试 134 7.3 容器化Selenium—整合Docker 135 7.3.1 Docker简介 135 7.3.2 安装Docker并拉取Selenium 镜像 137 7.3.3 在同一台机器上部署 Selenium Grid镜像 139 7.3.4 在多台机器上部署 Selenium Grid组成集群 142 7.4 容器化Selenium—整合 Kubernetes 143 7.4.1 Kubernetes简介 144 7.4.2 Kubernetes的安装与配置 145 7.4.3 Kubernetes的关键概念—— Pod、Deployment、Service 146 7.4.4 在Kubernetes集群中部署 Selenium Grid 148 第8章 Selenium 4的新特性预览 152 8.1 Selenium WebDriver 4 152 8.1.1 下载WebDriver 152 8.1.2 相对定位器 153 8.1.3 显式等待组合逻辑 155 8.1.4 其他更新 156 8.2 Selenium Grid 4 158 8.2.1 下载与启动 158 8.2.2 运行测试 160 第9章 Appium的基本运用 162 9.1 Appium运行原理简介 162 9.2 Appium的安装与配置 164 9.2.1 安装Android SDK 164 9.2.2 安装Appium服务器 170 9.2.3 安装Appium客户端 171 9.3 使用Appium测试Web程序 172 9.3.1 设置浏览器驱动程序 172 9.3.2 编写代码操作Web应用程序 174 9.3.3 通过Appium工具查看元素 信息 175 9.3.4 其他替代方案 177 9.4 使用Appium测试App 178 9.4.1 连接真实的移动设备 179 9.4.2 解析启动属性appPackage 和appActivity 179 9.4.3 查看并定位界面元素 182 9.4.4 编写操作代码——微信登录 案例 184 第 10章 Appium的高级运用 186 10.1 Appium检测工具的具体功能 186 10.2 移动设备元素独有的定位 195 10.3 移动设备界面独有的操作 198 10.3.1 滑动操作与多点触控 198 10.3.2 触控操作链 201 10.3.3 剪贴板与虚拟键盘操作 204 10.4 移动设备App独有的操作 205 10.4.1 App的安装、卸载、启用、 关闭与隐藏 205 10.4.2 操作及获取当前的appPackage 和appActivity 208 10.5 移动设备系统独有操作 209 10.5.1 网络信号与通话 209 10.5.2 设备与电源管理 210 10.5.3 模拟GPS定位 211 10.6 测试辅助操作 212 10.6.1 屏幕录制 212 10.6.2 获取App性能消耗信息 及上下文信息 212 10.7 并行运行多个移动设备 214 10.8 将Appium加入Selenium Grid 集群 215 第二部分 自动化测试实战: 组织及模式优化 第 11章 使用Selenium进行功能测试 221 11.1 完善测试的基本要素 222 11.2 结合Pytest进行功能测试 224 11.2.1 Pytest的安装与简介 225 11.2.2 基于Pytest编写Selenium 测试 226 11.2.3 选择合适的执行方式 227 第 12章 完善功能测试驱动以规范测试 230 12.1 引言 230 12.2 线性测试 233 12.3 模块化与库 234 12.4 数据驱动 235 12.5 关键字驱动 235 12.6 使用驱动时的误区 236 12.6.1 数据驱动的误区 236 12.6.2 关键字驱动的误区 237 12.7 模式:混合驱动 238 12.7.1 混合第 一层驱动 238 12.7.2 混合第二层驱动 240 12.8 创建配置文件以应对不同环境 242 12.8.1 让公共信息支持多环境配置 242 12.8.2 让用例数据支持多环境 配置 243 第 13章 设计功能测试的逻辑组织结构 245 13.1 测试的前置操作与后置操作 245 13.1.1 Pytest setup与teardown功能 详解 245 13.1.2 前后置操作实际运用案例 247 13.2 设定测试函数的先后顺序 250 13.2.1 文件级执行顺序 250 13.2.2 函数级执行顺序 251 13.2.3 自定义顺序 251 13.3 测试粒度规划 252 13.3.1 小粒度的测试 252 13.3.2 中粒度的测试 253 13.3.3 大粒度的测试 254 第 14章 优化功能测试的物理组织结构 256 14.1 引言 256 14.2 通过页面对象规划待操作元素 261 14.3 通过继承关系组织公共元素 265 14.4 进一步解耦测试用例与操作 动作 268 14.4.1 解耦测试工具级操作 269 14.4.2 解耦页面元素级操作 274 14.5 通过流式编程技术简化测试代码 279 第 15章 增强功能测试的运行反馈机制 283 15.1 生成测试报告 283 15.2 并行运行测试 285 15.3 引入重试机制 286 第 16章 使用Selenium进行非功能 测试 287 16.1 网络爬虫 287 16.1.1 爬虫简介 287 16.1.2 使用Selenium实现爬虫 288 16.2 性能测试 291 16.2.1 多线程性能测试 291 16.2.2 结合JMeter进行测试 293 第三部分 自动化测试实战: 落实及实践优化 第 17章 自动化测试的规划 301 17.1 目标决定自动化测试的成败 301 17.1.1 必定走向失败的目标 301 17.1.2 能够引领成功的目标 304 17.2 测试设计决定自动化测试的成效 304 17.2.1 无效的测试设计 305 17.2.2 有效的测试设计 306 第 18章 使用Jenkins进行持续集成 308 18.1 必要概念与工具简介 308 18.1.1 持续集成与Jenkins简介 308 18.1.2 Jenkins的安装与配置 310 18.2 配置基于网站代码变化而自动 执行的Selenium脚本 315 18.2.1 编写一个基于Flask的网站 316 18.2.2 编写该网站的自动部署脚本 317 18.2.3 编写测试该网站的Selenium 测试脚本 319 18.2.4 在Jenkins中配置自动构建、 部署与执行测试 320 18.3 配置基于时间定期自动执行的 Selenium脚本 326 18.4 完善运行反馈配置 328 18.4.1 配置测试报告 328 18.4.2 配置邮件发送 329 第 19章 选择自动化测试的实施方式 334 19.1 不同产品架构与开发流程下的 自动化测试 334 19.2 以正确的数据说话——建立自动化 测试评估体系 336 19.3 打造自动化测试闭环 338 |