关于《Python自动化测试实战》
作者有话说
笔者写这本书的初心是想通过自身经验分享一些在自动化测试领域中的实用技术,能够帮助那些正在从事自动化测试相关工作或者准备转型自动化测试的测试人员。任何一门技术涵盖的知识点都是非常广泛的,可能并不是一本书就能够写完并且讲解清楚。本书没有太多废话,书中内容基于实战型例子,任何读者对着本书中的示例都可以很快上手学习。书中实战教程设计思路属于一气呵成,从头到尾知识体系版块布局清晰,实操流程表述细致且接地气,可保证大部分读者在阅读本书时比较轻松、愉悦。并不会像市面上有些书籍内容知识点过于分散,操作流程缺失,导致读者实操衔接不上。综上而言,一本真正的好书,内容上一定是朴实,实用,具备一些行业内未曾公开过的知识点。阅读风格上一定是简单易懂,表达接地气。所以,如果你购买了本书,相信在阅读、操练期间一定会有所感触。希望这本书可以帮助到你,也感谢你对我的支持,谢谢!!!
第 1 章 自动化测试理论
引领读者了解实施自动化测试的意义和自动化测试实施过程,为后续学习自动化测试技术抛砖引玉。
第 2 章 Selenium 3 自动化测试实战
涵盖目前主流功能自动化测试工具 Seleneium 3 的应用,讲解了 Selenium 3 自动化测试环境搭建,并结合大量案例来演示多种 Webdriver API 在自动化测试中的应用、unittest 单元测试框架、数据驱动测试(DDT)实战及自动化脚本的数据分离和封装设计实战等,在最后通过一个实战项目讲解如何从 0 到 1 搭建一个丰富且完整的功能自动化测试框架(包含用例组织、数据封装、配置文件管理、日志跟踪、自动生成邮件和持续集成等)。
第 3 章 RobotFramework 自动化测试实战
以 Python 语言为驱动,系统讲解了 Seleneium2Library 库及 Databaselibrary 库在自动化测试中的应用实战,其中包含 Selenium2Library 库和 DatabaseLibrary 库中常用关键字使用案例解析、关键字封装、项目分层设计与开发实战等,最后结合 Jenkins 实现持续集成,输出自动化测试报告。掌握本章后,读者可以独立开展自动化测试任务。
第 4 章 接口测试基础
以接口测试理论为切入点,系统地讲解接口定义、接口测试流程及接口测试用例设计原则和注意事项,重点讲解了 HTTP 及在接口测试中的重要性。在本章最后阐述了接口测试工作中绕不开的话题,即 Cookie 和 Session 的工作原理。
第 5 章 Charles 抓包工具实战
系统地讲解主流抓包工具 Charles 在实际工作中的应用。通过本章,读者可以掌握Charles 工具配置、设置代理、计算机端抓包设置及手机端抓包设置、Charles 常见问题以及 Charles 在接口测试中的应用等,了解 Charles 抓包工具在接口自动化测试中的重要性。
第 6 章 Postman 接口测试高级实战
以 Postman 接口测试工具(Collections、Runner、Code、Globals 等)核心功能为出发点,重点讲解如何使用 Postman 处理 HTTP 请求和 WebServices 请求案例,以及在接口测试过程中如何设置接口断言、处理数据转换(JSON 和 XML)、解决动态参数的依赖和调用、分离公共数据、转换多种编程语言测试脚本等。本章最后通过 Newman+Jenkins+Postman 实现持续集成,可以定时接口自动化测试任务。
第 7 章 Python 接口自动化测试实战
系统讲解使用 Requests 模块实现接口自动化测试。从 Requests 模块常用示例(GET、POST、JSON、Requests Headers、Response 等)入手,围绕 Cookie、Session、Token、上传文件、序列化和反序列化等案例开展接口测试。最后结合 Python 3+Requests+unittest 讲解接口自动化测试框架的设计和开发思路。
第 8 章 RobotFramework 接口自动化实战
系统讲解 Collections 库、ExcelLibrary 库、RequetsLibrary 库中常见关键字在接口测试中的使用。此外,还涉及如何使用 ExcelLibrary 库进行测试数据的维护和管理、封装并调用接口关键字,以及测试数据与业务分离等。掌握本章后,读者可以使用 RobotFramework 工具开展接口自动化测试任务。
第 9 章 Appium 自动化测试实战
系统地讲解了 Appium 移动端自动化测试环境的搭建,结合丰富的案例基于 Android 操作平台演示 WebDriver 在实际工作中的应用,主要内容包括自动化截图实战、滑动实战、多点触控实战、键盘事件、等待函数实战等及使用 Appium 测试框架完成一个自动化项目实战脚本的演示(涵盖需求分析→自动化用例设计→脚本编写→脚本封装重构→测试案例运行及分析等)。掌握本章后,读者可以独立开展移动端自动化测试任务。
第 10 章 Git 版本控制工具实战
通过实际案例来演示 Git 在项目管理中的应用,包括版本库创建、文件提交和跟踪管理以及版本回退等。此外,还涉及 GitHub 配置及远程库的添加和远程克隆等操作。随着企业内部技术的不断升级和调整,掌握 Git 工具的使用方法是测试人员的必备技能之一。
写在最后
本书是笔者的第一本书,在写作过程中,受成书时间所限,本书难免存有疏漏和不当之处,还请读者指正。此外,由于出版社印刷时间的变更,导致本书中部分内容没来得及更新,会有些小错误,作者已将书中的错误更新至GitHub中。已经购买本书的读者在阅读过程中如果发现书中的错误,请加作者微信及时与我联系,我将十分感谢你!!!
本书购买链接:http://product.dangdang.com/28496655.html
关于《Python自动化测试实战》的更多相关文章
- 关于<meta NAME="keywords" CONTENT="">
昨天终于以实习身份入职一家小创业公司,今天让我多看看别人的网页怎么写的,发现了一个以前都没关注过的东西. <meta name="keywords" content=&quo ...
- 转 :meta name的含义:<META http-equiv=Content-Type content="text/html; charset=gb2312">
meta是什么?meta其实是html语言head区的一个辅助性标签.在几乎所有的网页里,我们都可以看到类似下面这段html代码:<META http-equiv=Content-Type co ...
- HTML <meta> 标签 遇到<meta http-equiv="refresh" content="0; url=">详解
页面定期刷新,如果加url的,则会重新定向到指定的网页,content后面跟的是时间(单位秒),把这句话加到指定网页的<head></head>里一般也用在实时性很强的应用中, ...
- 转 【<meta name="description" content=">】作用讲解
今天在看别人写的网站代码,发现类似<meta name="Keywords" content="" >.<meta name="De ...
- <head>中<meta name="viewport" content="width=device-width,initical-scale=1"的作用>
<meta name="viewport" content="width=device-width,initical-scale=1"的作用> co ...
- 关于<meta http-equiv="X-UA-Compatible" content="IE=edge" />问题
我在做网页过程中都是在火狐浏览器下进行的,可是有一次我在IE浏览器下打开时却发现我设置的style.css中的大部分样式都失效率了,这个问题足足困扰了我两天,终于在百度的帮助下找到了答案,原来在网页的 ...
- 优先使用最新版本的IE 和 Chrome 内核 1 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
兼容模式 优先使用最新版本的IE 和 Chrome 内核 1 <meta http-equiv="X-UA-Compatible" content="IE=edge ...
- 论meta name= viewport content= width=device-width initial-scale=1 minimum-scale=1 maximum-scale=1的作用
一.先明白几个概念 phys.width: device-width: 一般我们所指的宽度width即为phys.width,而device-width又称为css-width. 其中我们可以获取ph ...
- meta name="viewport" content="width=device-width,initial-scale=1.0" 解释
<meta name="viewport" content="width=device-width,initial-scale=1.0"> c ...
- <meta http-equiv="X-UA-Compatible" content="IE=edge" /> 的说明
X-UA-Compatible是针对ie8新加的一个设置,对于ie8之外的浏览器是不识别的,这个区别与 content="IE=7"在无论页面是否包含<!DOCTYPE> ...
随机推荐
- rabbitmq系列(四)死信队列
一.什么是死信队列 当消息在一个队列中变成一个死信之后,它将被重新publish到另一个交换机上,这个交换机我们就叫做死信交换机,私信交换机将死信投递到一个队列上就是死信队列.具体原理如下图: 消息变 ...
- python编码的原理以及写入文件中乱码的原因
1.unicode可以理解为世界上所有字符的集合,它不对应二进制编码 2.详见: https://blog.csdn.net/qq_33692803/article/details/81321340 ...
- datetime和time
datetime和time 1.datetime模块 import datetimenow = datetime.datetime.now() #时间对象print(now,type(now))pri ...
- input标签的accept属性、JQuery绑定keyDown事件
一. input标签的accept属性 当我们上传文件或者注册上传头像时,我们可以一般都是使用: <input type="file" id="my_file&qu ...
- demo08-js条件运算符
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 【2019牛客暑期多校第三场】J题LRU management
题目链接 题意 好吧,这道题我其实看都没看过,队友跟我说了说这道题是模拟题,卡时间.然后我就上了-- 大致就是维护一个线性表,然后有两种操作:插入.查询 插入时,如果这个值(string)之前出现过, ...
- 图-搜索-DFS-51. N皇后
2020-03-15 19:49:59 问题描述: n 皇后问题研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击. 上图为 8 皇后问题的一种解法. 给定一个整数 n ...
- 一个完整的机器学习项目在Python中演练(三)
大家往往会选择一本数据科学相关书籍或者完成一门在线课程来学习和掌握机器学习.但是,实际情况往往是,学完之后反而并不清楚这些技术怎样才能被用在实际的项目流程中.就像你的脑海中已经有了一块块"拼 ...
- ADO.NET 的使用(二)
一.本篇主要讲ADO.NET的核心DataSet DataSet里面有个DataTable,DataTable还有个对应的DataView 首先呢,假设数据库的数据 id name mob 100 张 ...
- 1.NET Core 概述
.NET Core 概述 .NET Core是一个免费的.开源的.跨平台的.广泛使用的Web框架:它是由微软维护的.社区广泛参与支持的一个框架..NET Core可以运行在:Windows.MacOS ...
