笔者很早就进入了测试行业,所在团队早期的项目都是基于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自动化测试》特色
1.视频教学,高效、直观
为了帮助读者更加高效、直观地学习本书内容,笔者专门为本书录制了约10小时的基础操作视频,相信读者结合视频学习,可以达到事半功倍的效果。
2.内容全面、系统
本书全面涵盖Web自动化测试的相关知识,如自动化测试的前期评估、WebDriver、单元测试、Page Object设计模式、自动化框架的设计与实现等,可以让读者通过阅读一本书即可比较系统地掌握Web自动化测试的核心技术。
3.由浅入深,循序渐进
本书讲解时从基础和原理入手,再辅以典型实例,尽量让前文的讲解作为后文的铺垫,一步步带领读者循序渐进地学习。这样的章节安排符合读者的学习和认知规律,学习梯度比较平滑,学习效果更好。
4.原理与实践相结合
笔者深信,只有通过动手实践,才能加深对知识的理解,因此书中不仅介绍了自动化测试的相关概念和原理,而且还匹配了相应的测试案例,这样可以让读者学以致用,适应职场的相关要求。
5.案例典型,步骤详细,代码翔实
本书注重内容的实操性,主要知识点都配合实例进行讲解。书中在讲解实例和案例时都给出了详细的操作步骤和实现代码,并对关键代码做了详细的注释,便于读者理解。
6.提供教学PPT,方便学习和教学
笔者还为本书制作了教学PPT,可以方便相关院校的老师在教学中使用,也可以方便学生和自学人员梳理本书的知识体系。
《从零开始学Selenium自动化测试》内容
本书将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)上搜索到本书,然后单击“资料下载”按钮,即可在本书页面上找到下载链接。
……
p***o 2021-02-06 23:27:38
good