技术教育社区
www.teccses.org

SELENIUM 3+PYTHON 3自动化测试项目实战:从菜鸟到高手

封面

作者:田春成

页数:324

出版社:电子工业出版社

出版日期:2019

ISBN:9787121372704

电子书格式:pdf/epub/txt

内容简介

Selenium是目前很好流行的一种自动化测试工具。本书基于Python 3语言讲述了近期新的Selenium 3的基本理论与操作,涉及各种不错应用,以及如何进行项目实战,并提供了详细的自动化平台部署步骤。本书共14章,分为4篇。篇介绍了Selenium概况、相关的基础知识及环境的搭建步骤;第2篇介绍了Selenium涉及的各种技术,包括前端技术、Selenium元素定位、Selenium常用方法及WebDriver进阶应用;第3篇以携程订票系统为例,深入探讨了如何进行项目实战与优化,详细介绍了项目重构、数据驱动测试、Page Object设计模式及行为驱动等相关的各种常用技术;第4篇介绍了平台建设相关的一些实用技术,如平台搭建维护、项目部署及运用Docker容器技术进行测试等。为了使读者不但能掌握Selenium自动化测试,而且能够迅速获得项目经验,有效掌握并灵活运用到实际的测试项目中,本书注重理论与实践相结合,提供了大量典型的自动化测试实例,按照由浅入深、前后照应的顺序来安排内容。如果你是初学者,可以按照本书安排的先后顺序来学习,这会让你对自动化项目能更快上手;如果你是有经验的不错测试从业人员,可以根据自己的需求阅读此书,借此来夯实基础,获得更多的项目设计和部署的经验,以及对项目全局方面的认知。

作者简介

田春成,多年测试开发经验,长期从事自动化测试框架、分布式测试平台设计与开发工作。现为某创业公司技术总监。李靖,资深测试开发工程师,十年开发测试经验。曾在外企SAP从事自动化、性能测试工作。长期从事自动化测试技术选型、技术研究和框架设计相关工作。

相关资料

……纵览全书,内容循序渐进,概念清晰明了,理论联系实际,从易到难,知识体系全面而系 统,是一本通过 Python 语言来全面掌握 Selenium 3 的好书。
——Dell EMC 中国研发集团资深架构师 茹炳晟

自动化测试已经是敏捷开发的流程中不可或缺的一环。本书以实战项目为中心,持续地围绕项目来嵌入框架思想等重要内容。特别对书中的Page Object设计模式在项目中的详细应用和利用Docker技术执行多线程测试等内容印象深刻。总体来说,本书言简意赅,干货多多,值得一读。
——英国文化教育协会西南区IT服务交付经理 Amber Dong

自动化测试近几年比较热门,市场需求也比较大。本书的特点是能真正地为软件测试人员考虑,因为在有限的篇幅内既讲解了必需的Python语言知识,也设计了很多演示案例,项目等,内容翔实,代码可以拿来即用。此书适合初学者,书中的知识体系是层层递进的,比较容易掌握和吸收;也适合有经验的从业者,有一定的深度和广度。
——苏州博纳讯动软件有限公司 测试总监 金伟

本书从测试人员真正的需求出发,结合典型的项目案例,以通俗易懂的形式,由浅入深地讲解了如何对企业级项目部署并实施Selelnium自动化。读完此书,等于多了一项Selelnium的项目经验。
——51CTO学院 总监 张宝龙

本书特色

Selenium是目前非常流行的一种自动化测试工具。本书基于Python 3语言讲述了最的Selenium 3的基本理论与操作,涉及各种高级应用,以及如何进行项目实战,并提供了详细的自动化平台部署步骤。本书共14章,分为4篇。第1篇介绍了Selenium概况、相关的基础知识及环境的搭建步骤;第2篇介绍了Selenium涉及的各种技术,包括前端技术、Selenium元素定位、Selenium常用方法及WebDriver进阶应用;第3篇以携程订票系统为例,深入探讨了如何进行项目实战与优化,详细介绍了项目重构、数据驱动测试、Page Object设计模式及行为驱动等相关的各种常用技术;第4篇介绍了平台建设相关的一些实用技术,如平台搭建维护、项目部署及运用Docker容器技术进行测试等。为了使读者不但能掌握Selenium自动化测试,而且能够迅速获得项目经验,彻底掌握并灵活运用到实际的测试项目中,本书注重理论与实践相结合,提供了大量典型的自动化测试实例,按照由浅入深、前后照应的顺序来安排内容。如果你是初学者,可以按照本书安排的先后顺序来学习,这会让你对自动化项目能更快上手;如果你是有经验的高级测试从业人员,可以根据自己的需求阅读此书,借此来夯实基础,获得更多的项目设计和部署的经验,以及对项目全局方面的认知。

目录

目  录

第一篇 环境篇

第1章 自动化测试简介 3

1.1 什么是自动化测试 3

1.2 自动化测试的分类 4

1.3 自动化测试项目的适用条件 5

1.4 自动化测试总结 5

1.5 为什么选择Selenium 6

1.5.1 Selenium的特性 6

1.5.2 Selenium的发展 7

第2章 Selenium IDE的使用 9

2.1 Selenium IDE介绍 9

2.1.1 Selenium IDE的安装步骤 10

2.1.2 Selenium IDE的功能界面与工具栏介绍 11

2.1.3 Selenium IDE脚本介绍 12

2.1.4 waitforText、assertText和verifyText命令讲解 14

2.1.5 通过实例讲解storeTitle命令和echo命令 15

2.2 从Selenium IDE导出脚本 15

第3章 Python与Selenium环境搭建 18

3.1 Windows环境下的安装 19

3.1.1 Python安装 19

3.1.2 Selenium安装 21

3.1.3 开发工具IDE安装 24

3.1.4 不同浏览器环境搭建 31

3.2 Mac OS环境下的安装 32

3.2.1 Python安装 33

3.2.2 Selenium安装 34

3.2.3 浏览器的驱动 35

第二篇 基础篇

第4章 前端技术简介 39

4.1 HTML 39

4.1.1 HTML元素 40

4.1.2 HTML表单 46

4.2 CSS 47

4.3 JavaScript 48

第5章 Selenium元素定位 50

5.1 Python基础知识 50

5.1.1 数字类型 51

5.1.2 字符串类型 51

5.1.3 常用的判断与循环语句 52

5.1.4 集合 54

5.1.5 列表对象 57

5.2 Selenium八大定位 66

5.2.1 id定位 66

5.2.2 name定位 67

5.2.3 class定位 68

5.2.4 link_text定位 69

5.2.5 partial_link_text定位 70

5.2.6 CSS定位 70

5.2.7 XPath定位 73

5.2.8 tag_name定位 75

第6章 Selenium常用方法 77

6.1 基本方法 77

6.2 特殊元素定位 82

6.2.1 鼠标悬停操作 82

6.2.2 Select操作 83

6.2.3 利用JavaScript操作页面元素 88

6.2.4 jQuery操作页面元素 90

6.2.5 常用的鼠标事件 92

6.2.6 常用的键盘事件 93

6.3 Frame操作 94

6.4 上传附件操作 96

6.4.1 上传附件操作方式一 97

6.4.2 上传附件操作方式二 97

6.4.3 上传附件操作方式三 100

6.5 Cookie操作 100

6.6 Selenium帮助文档 102

第7章 Selenium WebDriver进阶应用 104

7.1 滑块操作 104

7.1.1 携程注册业务分析 105

7.1.2 滑块处理思路 106

7.2 项目中的截图操作 107

7.2.1 页面截图 108

7.2.2 元素截图 108

7.2.3 验证码处理思路 109

7.3 Web页面多窗口切换 117

7.4 元素模糊定位 118

7.5 复合定位 120

第三篇 项目篇

第8章 项目实战 123

8.1 项目需求分析汇总 123

8.1.1 制定项目计划 124

8.1.2 制定测试用例 125

8.2 业务场景覆盖与分拆 126

8.2.1 逐个页面元素分析 129

8.2.2 分层创建脚本 133

8.3 项目代码总结 148

第9章 代码优化与项目重构 150

9.1 项目重构 150

9.1.1 重构——元素定位方法优化 150

9.1.2 车次信息选择优化 154

9.1.3 重构——代码分层优化 157

9.1.4 重构——三层架构 160

9.2 代码优化 164

9.2.1 重构——项目异常处理 164

9.2.2 重构——智能等待 167

第10章 数据驱动测试 168

10.1 一般文件操作 169

10.1.1 文本文件 169

10.1.2 CSV文件 171

10.1.3 Excel文件 173

10.1.4 JSON文件操作 176

10.1.5 XML文件操作 179

10.1.6 YAML文件操作 181

10.1.7 文件夹操作 184

10.2 通过Excel参数,实现参数与脚本的分离 184

10.2.1 创建Excel文件,维护测试数据 185

10.2.2 Framework Log设置 186

10.2.3 初步实现数据驱动 192

10.3 数据驱动框架DDT 198

10.3.1 单元测试 198

10.3.2 数据驱动框架的应用 208

10.3.3 利用DDT Excel实现简单的重复性测试 218

第11章 Page Object设计模式 222

11.1 什么是PO 222

11.2 PO实战 223

11.2.1 Common层代码分析 224

11.2.2 Base层代码分析 228

11.2.3 PageObject层代码分析 230

11.2.4 TestCases层代码分析 236

11.2.5 Data层分析 237

11.2.6 Logs层分析 237

11.2.7 Reports层分析 238

11.2.8 其他分析 238

11.2.9 PO项目执行 238

第12章 行为驱动测试 242

12.1 环境安装 242

12.2 行为驱动之小试牛刀 243

12.3 基于Selenium的行为驱动测试 246

12.4 结合PO的行为驱动测试 247

第四篇 平台篇

第13章 测试平台维护与项目部署 253

13.1 Git应用 253

13.1.1 Git安装 254

13.1.2 Git常用操作 257

13.1.3 GitHub运用 259

13.2 Jenkins安装 263

13.3 配置Jenkins 268

13.4 Jenkins应用 273

13.4.1 自由风格项目介绍 273

13.4.2 Jenkins Pipeline 277

13.5 完整的Jenkins自动化实例 281

13.6 项目部署 286

13.6.1 获取当前环境模块列表 286

13.6.2 安装项目移植所需模块 287

第14章 Docker容器技术与多线程测试 288

14.1 Docker简介 289

14.2 Docker的一般应用场景 291

14.3 Docker的安装和简单测试 292

14.3.1 Docker的安装 292

14.3.2 Docker的简单测试 294

14.4 Python多线程介绍 295

14.4.1 一般方式实现多线程 295

14.4.2 用可调用类作为参数实例化Thread类 296

14.4.3 Thread类派生子类(重写run方法) 297

14.5 本地利用多线程执行Selenium测试 298

14.6 利用Docker容器技术进行多线程测试 300

14.6.1 Selenium Grid介绍 301

14.6.2 安装需要的镜像 302

14.6.3 启动Selenium Hub 303

14.6.4 启动Selenium Node 303

14.6.5 查看Selenium Grid Console界面 304

14.6.6 在Docker环境下执行多线程测试 304

下载地址

立即下载

(解压密码:www.teccses.org)

Article Title:《SELENIUM 3+PYTHON 3自动化测试项目实战:从菜鸟到高手》
Article link:https://www.teccses.org/1067505.html