描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787111670032
51CTO副总裁邱文平与金牌讲师韩立刚等4位大咖力荐
资深自动化测试工程师全面分享10余年的技术积淀与实战经验
一步步带领“小白”从零开始全面掌握Web自动化测试技术与应用
作者发布的测试精品课程,观看人次超过1000万
10小时配套教学视频 案例源代码 教学PPT
全面涵盖自动化测试的前期评估、WebDriver、单元测试、Page Object设计模式、自动化框架的设计与实现、虚拟化等知识。
不仅介绍自动化测试的相关概念和原理,还匹配了相应的案例,实操性强。
从基础和原理入手,再辅以动手实践,让前文的讲解作为后文的铺垫,容易上手。
提供配套教学视频和教学PPT,帮助读者高效、直观地学习。
配书资源:
10小时配套教学视频
案例源代码文件
教学PPT
《从零开始学Selenium自动化测试(基于Python·视频教学版)》基于Python语言,系统地介绍了Selenium自动化测试的相关知识及应用。书中的大部分知识点都匹配了可独立运行的典型实例,便于读者学习与实践。另外,为了帮助读者更加高效、直观地学习,本书特意提供了约10小时基础操作配套教学视频。相信读者通过系统地学习本书内容,可以全面掌握Selenium 3自动化测试技术。
《从零开始学Selenium自动化测试(基于Python·视频教学版)》共13章,涵盖自动化测试基础、Selenium基础、环境部署、Selenium IDE、元素定位、WebDriver API剖析、单元测试框架、自动化测试高级应用、Page Object设计模式、自动化测试框架、持续集成、Selenium Grid分布式测试、Selenium与虚拟化。
《从零开始学Selenium自动化测试(基于Python·视频教学版)》内容丰富,语言通俗易懂,讲解深入浅出,非常适合有Python语言基础的软件测试入门人员阅读,也适合软件测试工程师尤其是Web自动化测试工程师阅读。另外,本书还适合作为高等院校软件测试专业的教材及相关培训机构的教学用书。
第1章 自动化测试基础 1
1.1 自动化测试简介 1
1.1.1 自动化测试的定义 2
1.1.2 自动化测试与手工测试的关系 2
1.1.3 何时开展自动化测试 3
1.1.4 自动化测试的优势 4
1.1.5 自动化测试的实施场景 4
1.1.6 自动化测试的成本 5
1.2 自动化测试工具 6
1.2.1 自主开发测试工具 6
1.2.2 开源测试工具 7
1.2.3 商业测试工具 7
1.2.4 自动化测试工具的选择 8
1.2.5 “年度最佳”自动化测试工具 10
1.3 自动化测试的分层 13
第2章 Selenium基础 16
2.1 Selenium简介 16
2.1.1 Selenium的特点 16
2.1.2 Selenium的发展史 17
2.1.3 Selenium的工具集 17
2.1.4 Selenium 3.0的新特性 20
2.2 成就“大神”之路 21
2.2.1 开发语言 21
2.2.2 前端知识 21
2.2.3 前端工具 24
2.2.4 网络基础知识 27
2.2.5 开发语言技能 28
2.2.6 持续集成 28
2.2.7 分布式 28
2.2.8 自动化测试平台 28
第3章 环境部署 29
3.1 Python的安装 29
3.1.1 Windows环境下的Python安装 30
3.1.2 Linux环境下的Python安装 35
3.2 Selenium的安装 36
3.2.1 在线安装 36
3.2.2 离线安装 37
3.3 IDE工具的选择 40
3.3.1 PyCharm简介 40
3.3.2 PyCharm的安装 41
3.3.3 PyCharm的简单使用 42
3.4 浏览器驱动程序的安装 46
3.4.1 Chrome浏览器的安装 46
3.4.2 Firefox浏览器的安装 49
第4章 Selenium IDE 52
4.1 Selenium IDE简介 52
4.1.1 Selenium IDE的安装 52
4.1.2 Selenium IDE的运行 56
4.2 Selenium IDE菜单栏 59
4.3 Selenium IDE工具栏 62
4.4 Selenium IDE地址栏 65
4.5 测试用例窗口 65
4.5.1 导航面板 66
4.5.2 脚本编辑区域 72
4.6 日志窗口与引用窗口 75
4.7 Katalon Studio自动化测试 76
4.7.1 Katalon Recorder的安装 76
4.7.2 案例:Katalon Recorder的数据驱动 83
(因字数所限,后续章节只给出了二级目录,完整目录请查看华章网站)
第5章 元素定位 86
5.1 元素定位简介 86
5.2 浏览器定位元素 87
5.3 Web元素定位 89
第6章 WebDriver API剖析 115
6.1 操作浏览器的基本方法 115
6.2 元素的操作方法 120
6.3 鼠标操作 124
6.4 键盘操作 126
6.5 定位一组元素 128
6.6 等待时间 131
6.7 Frame切换 136
6.8 警告框与弹出框的处理 139
6.9 单选按钮、复选框和下拉列表框的处理 142
6.10 检查元素是否启用或显示 146
6.11 文件上传与下载 147
6.12 Cookie的处理 155
6.13 富文本 165
6.14 标签页切换 166
6.15 屏幕截图 167
6.16 执行JavaScript脚本 169
6.17 操作画布 179
第7章 单元测试框架 181
7.1 单元测试简介 181
7.2 单元测试框架简介 181
7.3 UnitTest框架 182
7.4 Pytest框架 192
第8章 自动化测试高级应用 202
8.1 HTML测试报告 202
8.2 通过邮件发送测试报告 204
第9章 Page Object设计模式 214
9.1 Page Object设计模式简介 214
9.2 Page Object案例实战 216
9.3 定时运行 218
第10章 自动化测试框架 224
10.1 自动化框架设计与实现的前期准备 224
10.2 自动化框架的设计与实现 235
第11章 持续集成 256
11.1 持续集成简介 256
11.2 Jenkins部署 258
11.3 Jenkins与自动化 268
第12章 Selenium Grid分布式测试 276
12.1 Selenium Grid简介 276
12.2 Selenium Server配置 276
12.3 Selenium Server工作原理 277
12.4 Selenium Grid分布式测试案例实践 282
第13章 Selenium与虚拟化 292
13.1 Docker简介 292
13.2 安装Docker 294
13.3 Selenium与Docker的结合 302
附录 310
……
笔者很早就进入了测试行业,所在团队早期的项目都是基于QTP实现的自动化场景案例及围绕QTP实现的自动化测试框架。团队一直都在使用HP公司的自动化测试工具,(从低版本QTP到高版本的UFT)。在2011年的一次内部测试技术讨论会议上,笔者与几位曾经有库巴科技及百度工作经历的同事一起进行自动化选型讨论,当时大家都提到了Selenium。
当时团队的项目大部分属于金融(保险和银行等)类型的Web项目,加之一些自有的属于教育体系的Web产品(K12相关产品),同时由于Selenium开源且支持多种开发语言,因此从2012年开始团队将新项目的自动化测试工作逐步转型到Selenium上,当时使用的开发语言是Java。2014年前后,笔者团队负责的一个国外视频项目是基于Python 2开发的,当时团队尝试了将Selenium与Python语言进行结合来完成该项目的自动化测试。
这样团队应用的自动化测试技术就有两种:QTP(或UFT)与Selenium。一些项目或产品还在维护与迭代阶段,由于使用的是QTP(或UFT),因此延续原有的自动化测试工具与框架;而新的Web项目则选用Selenium,结合的开发语言是Java与Python。
随着Python语言的快速发展,尤其是Python 3的发布,它被广泛应用于包括自动化测试在内的各个领域。由于Python语言的学习成本比Java语言低很多,因此笔者所在团队中的Web自动化测试工作也逐步从Java转为Python Selenium为主。
随着笔者在工作中应用Selenium越来越深入,于是就有了不少的项目经验和技术积累,在此期间笔者还录制了大量基于Selenium 2的测试课程(包括Selenium自动化实践基础、UnitTest单元测试框架及B/S自动化框架)。
受多位同行和朋友的鼓励,笔者有了将这些年在自动化测试方面的一些经验和感悟编写成书的想法,希望能将这些经验和感悟分享给想要学习测试技术的人。经过和编辑的沟通,最终确定了选题,并于2019年年初开始动笔。为了加快进度,笔者邀请了夜无雪加入写作,我们最终于2020年6月完稿。本书基于Selenium 3编写,为了使得Selenium的各个知识点通俗易懂,笔者针对不同的知识点设计了丰富的实战案例。希望读者通过阅读本书,能够快速掌握Selenium自动化测试技术。
《从零开始学Selenium自动化测试(基于Python·视频教学版)》特色
1.视频教学,高效、直观
为了帮助读者更加高效、直观地学习本书内容,笔者专门为本书录制了约10小时的基础操作视频,相信读者结合视频学习,可以达到事半功倍的效果。
2.内容全面、系统
本书全面涵盖Web自动化测试的相关知识,如自动化测试的前期评估、WebDriver、单元测试、Page Object设计模式、自动化框架的设计与实现等,可以让读者通过阅读一本书即可比较系统地掌握Web自动化测试的核心技术。
3.由浅入深,循序渐进
本书讲解时从基础和原理入手,再辅以典型实例,尽量让前文的讲解作为后文的铺垫,一步步带领读者循序渐进地学习。这样的章节安排符合读者的学习和认知规律,学习梯度比较平滑,学习效果更好。
4.原理与实践相结合
笔者深信,只有通过动手实践,才能加深对知识的理解,因此书中不仅介绍了自动化测试的相关概念和原理,而且还匹配了相应的测试案例,这样可以让读者学以致用,适应职场的相关要求。
5.案例典型,步骤详细,代码翔实
本书注重内容的实操性,主要知识点都配合实例进行讲解。书中在讲解实例和案例时都给出了详细的操作步骤和实现代码,并对关键代码做了详细的注释,便于读者理解。
6.提供教学PPT,方便学习和教学
笔者还为本书制作了教学PPT,可以方便相关院校的老师在教学中使用,也可以方便学生和自学人员梳理本书的知识体系。
《从零开始学Selenium自动化测试(基于Python·视频教学版)》内容
本书将Python语言与Selenium相结合来实现自动化测试,需要读者具备Python语言基础,才能很好地阅读。Python语言的相关图书与学习资料很多,本书并没有设置专门的章节来讲解。如果读者还不具备Python语言基础,推荐阅读张頔编著的《Python编程从0到1》一书。这是一本很好的Python程序设计图书,对于读者掌握Python程序设计有很大的帮助。
下面简单地介绍一下本书各章的内容。
第1章介绍为什么要做自动化测试,常见的自动化测试工具有哪些,以及哪些项目适合开展自动化测试等。
第2章介绍Selenium的发展历程及其学习路线。
第3章介绍Python和Selenium的环境部署。
第4章介绍Selenium集成开发环境与Katalon Studio的相关知识。本章所讲内容并不是自动化测试的重点,因为实际测试过程中很少通过集成开发环境来实现自动化,它只是辅助手段,但仍然需要读者了解这些内容。
第5章介绍如何定位Web页面中的各类元素,如文本框、按钮、复选框、图片、超链接和表等。本章内容是Selenium应用基础,需要读者很好地掌握。
第6章详细介绍WebDriver API的相关知识,如表单处理、鼠标处理及等待时间设置等。
第7章详细介绍单元测试框架的相关知识,涵盖UnitTest与Pytest两种单元测试框架。
第8章介绍HTML报告的生成及测试报告邮件的发送。
第9章详细介绍如何在自动化测试中融入Page Object设计模式。该设计模式是Selenium自动化测试领域公认的较好的设计模式。
第10章介绍自动化测试框架的一些基础技能的相关知识点,如日志、数据驱动及自动化框架的设计与实现等。
第11章介绍自动化与持续集成(CI)的结合。
第12章介绍如何借助Selenium Grid开展分布式测试。
第13章介绍Selenium与虚拟化(Docker)的结合。
读者对象
- 有一定Python语言基础的自动化测试初学者;
- 初级和中级测试工程师;
- 想提升自动化测试技术的人员;
- 高校及职业院校软件测试专业的学生;
- 相关培训机构的学员。
配书资料获取
笔者为本书提供了完整的实例源代码、基础操作教学视频及教学PPT等配套学习资料,这些资料需要读者自行下载。读者可以在华章公司的网站(www.hzbook.com)上搜索到本书,然后单击“资料下载”按钮,即可在本书页面上找到下载链接。
……
晓鹏老师多年以来一直在测试领域深耕,具有丰富的项目经验。过去几年,他在51CTO学院录制并发布了一系列测试相关的精品课程,观看人次超过200万,深受学员们的喜爱。这部基于Python 3的Selenium 3自动化测试图书是对他多年测试经验的总结,内容丰富,讲解循序渐进,并且给出了大量的实操案例,相信读者阅读后一定会收获颇丰。
——51CTO副总裁 邱文平
晓鹏老师拥有多年的一线项目实战经验,为国内众多公司提供过测试咨询服务。另外,他还有在高校担任软件测试教研室主任的工作经历。这使得他成为一位既有理论功底,又有实战经验的资深测试工程师。他不仅擅长软件测试,而且对网络、数据库和Linux等技术也有深入研究。他系统地录制了大量的软件测试视频课程,广受51CTO学院学生的好评。他培养的学生很多都在百度、阿里巴巴、腾讯和360等一线互联网公司从事软件测试工作。他主笔编写的这本书结合案例,循序渐进地介绍了Selenium 3自动化测试技术及应用,是一部将项目开发经验和教学经验相结合的软件测试优秀读物,值得读者细读。
——畅销书作者/51CTO金牌讲师 韩立刚
多年来,李老师与时俱进,专注于对测试技能的挖掘与探索,这让他拥有丰富的项目经验及主流测试工具的使用经验。2011年我跟随着李老师系统地学习测试,是他把我领进了测试的大门。他教授的课程内容由浅入深,规划条理清晰,上手比较容易。本书是他多年测试经验的结晶,无论读者的基础如何,相信都能通过本书快速上手,并全面掌握Web自动化测试的相关技术。
——YY测试开发工程师 李强
李老师深耕软件测试行业多年,有丰富的项目管理经验,他的教学水平精湛,教学内容丰富,涵盖系统、网络、数据库、自动化、测试开发、性能等与测试相关的大部分技术,所教授的学生多任职于各大知名公司。本书总结了他多年的测试实战经验,内容丰富、新颖,配合实操案例,适合绝大多数测试入门人员和工程师阅读,相信读后定有斩获。
——生命奇点测试主管 王兆雪
评论
还没有评论。