新書推薦:
![甲骨文字趣释](http://103.6.6.66/upload/mall/productImages/24/28/9787229185947.jpg)
《
甲骨文字趣释
》
售價:HK$
66.7
![利润的暗影:资本主义全球扩张与环境变迁史(探秘历史深处的经济与生态交织)](http://103.6.6.66/upload/mall/productImages/24/27/9787308250030.jpg)
《
利润的暗影:资本主义全球扩张与环境变迁史(探秘历史深处的经济与生态交织)
》
售價:HK$
82.8
![唐长安城坊古今注](http://103.6.6.66/upload/mall/productImages/24/28/9787030783721.jpg)
《
唐长安城坊古今注
》
售價:HK$
112.7
![持家的人 : 女性劳动与能源变革](http://103.6.6.66/upload/mall/productImages/24/27/9787500881629.jpg)
《
持家的人 : 女性劳动与能源变革
》
售價:HK$
71.3
![教育心理学](http://103.6.6.66/upload/mall/productImages/24/27/9787521763645.jpg)
《
教育心理学
》
售價:HK$
182.9
![中亚古代史](http://103.6.6.69/upload/mall/productImages/y24/8/9787545220049.jpg)
《
中亚古代史
》
售價:HK$
102.4
![村上春树·音乐](http://103.6.6.66/upload/mall/productImages/24/26/9787569509960.jpg)
《
村上春树·音乐
》
售價:HK$
67.9
![金钱、道德和做派:法国和美国中上阶层的文化](http://103.6.6.66/upload/mall/productImages/24/28/9787213114557.jpg)
《
金钱、道德和做派:法国和美国中上阶层的文化
》
售價:HK$
101.2
|
編輯推薦: |
叫叫学院CTO彭守长、字节跳动高级工程师黄豪杰等4位大咖力荐
结合典型的测试场景,全面介绍Python自动化测试涉及的核心技术
搭建一个自研的自动化测试平台,提高测试效率,降低项目测试的成本
80多个实例,2个综合项目案例,提高读者的动手能力
内容全面:涵盖Web测试和App测试涉及的核心技术及典型场景。
讲解详细:详解每个重要的知识点,并给出每个实例和项目案例的详细实现步骤。
由浅入深:从概念讲起,逐步深入核心技术,*后通过项目案例进行实践。
实用性强:从实际的测试场景出发,结合多个典型实例与综合案例进行讲解。
技术前瞻:引入测试驱动开发和行为驱动开发等新技术和编程模式。
|
內容簡介: |
《Python自动化测试入门与进阶实战》从Python自动化测试的概念开始讲解,然后逐步深入讲解自动化测试的进阶知识,*后通过两个综合项目案例,重点介绍如何使用unittest requests Selenium进行RESTful API和跨终端自动化测试,让读者能够从实践中学会项目分析,编写出高质量和高复用性的测试代码,并全面、系统、深入地掌握Selenium的相关知识。
《Python自动化测试入门与进阶实战》共10章,分为2篇。第1篇Python自动化测试基础,涵盖的主要内容有自动化测试概述、Python HTTP接口编程、Selenium基础知识、Python模拟数据测试、Python爬虫测试接口、性能测试、App自动化测试及pytest单元测试;第2篇Python自动化测试实战,涵盖的主要内容有基于RESTful API的自动化测试案例,以及基于Selenium的Web自动化测试案例。
《Python自动化测试入门与进阶实战》内容全面,语言通俗易懂,案例丰富,代码规范,特别适合有一定Python编程基础而想要学习Python自动化测试技术的人员阅读,也适合对自动化测试感兴趣的相关从业人员和技术爱好者阅读。另外,本书还可以作为高等院校相关专业的教材及相关培训机构的教学用书。
|
關於作者: |
唐文 慧博云通成都分公司高级研发工程师。热爱技术类文章的写作及开源技术的传播,运营与维护技术公众号成都有娃儿和cnblogs博客。曾在上市公司聚美优品和边锋领沃从事研发工作,也曾在创业公司担任架构师和研发主管。热衷于新兴技术,崇尚开源和全栈开发,熟悉PHP、Python、Golang和Java等后端技术栈,对自动化测试有较为深入的研究,并且积累了丰富的实践经验。
|
目錄:
|
第1篇 Python自动化测试基础
第1章 自动化测试概述 2
1.1 测试方式分类 2
1.2 自动化测试的概念和优点 4
1.3 为什么用Python进行自动化测试 5
1.4 接口测试和UI测试的比较 6
1.5 小结 10
第2章 Python HTTP接口编程 11
2.1 发起HTTP请求示例 11
2.1.1 HTTP请求原理解析 11
2.1.2 利用Python发起HTTP请求 13
2.1.3 利用Python处理响应对象 14
2.2 HTTP简介 14
2.2.1 HTTP状态码 15
2.2.2 利用Python处理业务码 18
2.3 GET和POST请求 19
2.3.1 HTTP请求方式 20
2.3.2 利用Python发起GET请求 20
2.3.3 利用Python发起POST请求 22
2.3.4 利用Python完成自动登录示例 24
2.4 小结 25
第3章 Selenium基础知识 26
3.1 Selenium概述 26
3.2 Selenium环境搭建 27
3.2.1 安装Selenium包 27
3.2.2 安装不同浏览器的驱动包 27
3.3 在Selenium中选择元素对象 28
3.3.1 根据id和name选择元素对象 28
3.3.2 根据link text选择元素对象 29
3.3.3 根据XPath选择元素对象 29
3.3.4 CSS选择器 30
3.4 使用Selenium完成自动登录 33
3.4.1 自动登录百度网盘 34
3.4.2 自动登录QQ空间 36
3.5 鼠标事件 36
3.6 键盘事件 39
3.7 对一组对象定位 40
3.8 对层级对象定位 43
3.9 iframe中的对象定位 46
3.10 调试方法 48
3.11 对话框处理 49
3.12 跨浏览器的窗口处理 50
3.13 分页处理 51
3.14 控制浏览器的滚动条 53
3.15 小结 54
第4章 Python模拟数据测试 55
4.1 模拟测试简介 55
4.1.1 模拟测试的定义和使用场景 55
4.1.2 安装Mock库 56
4.1.3 Mock对象简介 56
4.1.4 简单用例 57
4.2 测试留言板功能 58
4.2.1 测试新增功能 59
4.2.2 对测试失败的情况进行处理 62
4.3 Mock库的高级用法 63
4.3.1 Patch简介 63
4.3.2 Patch的简单用例 63
4.3.3 利用Patch测试购物车类 64
4.4 模拟登录 68
4.4.1 登录的完整用例 68
4.4.2 通过面向对象的方式实现登录 70
4.5 小结 70
第5章 Python爬虫测试接口 72
5.1 爬虫测试简介 72
5.1.1 爬虫测试的思路和流程 72
5.1.2 urllib库的使用 73
5.1.3 urllib 3简介 78
5.1.4 BeautifulSoup的使用 79
5.1.5 使用BeautifulSoup爬取BOSS直聘网站上的信息 82
5.1.6 正则表达式简介 90
5.1.7 封装一个强大的爬虫工具类 93
5.2 Scrapy基础 94
5.2.1 Scrapy简介 94
5.2.2 Scrapy的基本用法 96
5.2.3 Scrapy爬虫实践 99
5.3 测试商品列表页面的完整用例 102
5.4 多线程爬虫用例 106
5.5 反爬虫安全策略 108
5.5.1 tesserocr库简介 109
5.5.2 图片滑块验证码 112
5.5.3 IP限制 115
5.6 小结 116
第6章 性能测试 118
6.1 性能测试简介 118
6.2 Locust工具的使用 119
6.2.1 环境搭建 120
6.2.2 Locust快速入门 124
6.2.3 Locust和其他工具集成 129
6.3 常用的压力测试工具 130
6.3.1 轻量级http_load工具的使用 131
6.3.2 webbench工具的使用 132
6.3.3 AB工具的使用 133
6.3.4 利用Python操作AB工具 137
6.4 利用多线程实现性能提升 141
6.5 使用JMeter对Selenium自动化代码进行压力测试 146
6.6 小结 152
第7章 App自动化测试 154
7.1 App自动化测试简介 154
7.2 测试计划设计 157
7.3 Appium自动化测试框架 159
7.3.1 Appium工具简介 159
7.3.2 环境搭建 160
7.3.3 Android Studio的简单使用 165
7.3.4 自动化测试手机计算器 169
7.3.5 Appium的常用API 172
7.4 小结 175
第8章 使用pytest进行单元测试 176
8.1 单元测试简介 176
8.1.1 单元测试的重要性 177
8.1.2 单元测试框架简介 178
8.1.3 安装pytest 179
8.1.4 pytest的简单用例 180
8.2 pytest的基本用法 189
8.2.1 断言 190
8.2.2 异常处理 192
8.2.3 执行测试和参数设置 193
8.2.4 对测试结果进行分析和处理 198
8.3 pytest进阶之conftest的使用 202
8.4 其他单元测试框架 206
8.5 小结 208
第2篇 Python自动化测试实战
第9章 基于RESTful API的自动化测试案例 210
9.1 RESTful API简介 210
9.2 接口分析 211
9.3 编写配置 214
9.4 数据准备 221
9.5 新增文章接口测试代码用例 222
9.6 修改文章接口测试代码用例 225
9.7 删除文章接口测试代码用例 226
9.8 查询文章接口测试代码用例 227
9.9 API测试工具 229
9.9.1 Tavern简介 229
9.9.2 Tavern的基本用法 229
9.9.3 使用Tavern测试文章的所有接口 231
9.10 小结 232
第10章 基于Selenium的Web自动化测试案例 233
10.1 自研自动化测试框架 233
10.2 使用Selenium自动化操作网盘 242
10.2.1 基本操作封装 242
10.2.2 发送通知邮件 247
10.3 使用Lettuce进行测试 250
10.3.1 TDD和BDD简介 251
10.3.2 使用pytest-bdd进行测试 252
10.3.3 Lettuce初体验 255
10.3.4 编写Lettuce程序 258
10.3.5 Aloe的使用 260
10.4 Selenium跨浏览器测试实战 262
10.4.1 Selenium Server的安装 262
10.4.2 Selenium数据驱动测试 267
10.4.3 poium测试库 274
10.4.4 pyautoTest Web UI自动化项目 275
10.5 小结 277
|
內容試閱:
|
如今,随着软件的复杂度越来越高,人工测试大型软件变得越来越困难,越来越多的公司开始使用Python进行自动化测试,即用程序和自动化工具来代替人工测试。因此,人工测试人员越来越无法满足市场需求,而基于Python的自动化测试工程师越来越受到市场的青睐。掌握Python测试技术,能让一个只会用测试工具的初中级测试工程师进阶到高级测试工程师之列,从而提高职业竞争力。
目前,由于自动化测试人才的紧缺,该领域的薪酬有了不小的涨幅。从主流招聘网站的统计数据可以看出,一线和准一线测试从业人员的收入差异较大:初级测试工程师和人工测试人员月薪为5000~12000元人民币;精通Python测试技术及自动化测试技术的高级测试工程师月薪为20000~45000元人民币;测试团队的管理人员月薪不低于50000元人民币。这样的薪资水平正在吸引着越来越多的技术人员进入测试领域,一些开发人员开始转行做测试或者做高级质量管理。特别是以BAT为代表的一些大公司和新崛起的IT公司,也在加大力度招聘精通Python测试和自动化测试技术的人才。
Python语言简单易学,拥有良好的灵活性和丰富的第三方库,能给开发和测试工作带来极大的便利,能对日常测试工作进行脚本化和程序化改进,用程序解决测试中的重复性工作,从而提高测试效率和质量。自动化测试可以解放生产力,通过预设的测试数据来批量测试功能清单上的功能点,可以完全覆盖所有的测试用例,并有效收集结果,给出测试结果的可视化报告,这比传统的人工测试效率高出很多。总体而言,通过测试手段来优化项目是自动化测试技术的一大优势所在。
目前,国内已经出版了一些相关图书,但比较系统地介绍Python自动化测试技术的图书还不多。基于这个原因,笔者编写了本书,意在帮助那些想系统学习Python自动化测试的人员高效学习。相信通过阅读本书,读者可以较为全面地掌握Python自动化测试技术,从而能够使用他人封装好的工具,也能自己动手开发适合自身业务的工具,甚至还能搭建可视化测试平台。
《Python自动化测试入门与进阶实战》特色 内容全面:对Web测试、App测试及性能测试涉及的相关技术进行详细介绍,全面覆盖Python自动化测试的核心技术与典型场景。 讲解详细:对每个重要的知识点都进行详细介绍,并对每个测试实例和项目案例都给出详细的实现步骤。 由浅入深:从Python自动化测试的概念开始,逐步深入讲解自动化测试的进阶知识,最后通过较为复杂的项目案例让读者从实战中学会项目分析,编写高质量和高复用性的测试代码。 实用性强:从实际的测试场景出发讲解核心技术,对每个知识点都配合典型实例进行讲解,并在最后两章给出两个完整的项目实战案例,以提高读者的实战水平。 技术前瞻:在讲解过程中适当引入一些新技术和编程模式,如TDD(测试驱动开发)和BDD(行为驱动开发)等,以拓展读者的知识。 《Python自动化测试入门与进阶实战》内容介绍 第1篇 Python自动化测试基础 第1章介绍自动化测试的定义和应用场景,并对比分析自动化测试和UI测试的不同之处。
第2章介绍如何使用Python的requests库发起HTTP请求,并处理服务器返回的结果。
第3章介绍Selenium的基础知识及对象定位的方法,并在此基础上介绍如何综合应用相关技术对页面目标进行自动化测试。
第4章介绍如何使用Python的Mock库进行模拟数据测试,并给出一个模拟登录案例。
第5章介绍如何使用爬虫技术进行接口测试,其中重点介绍urllib和BeautifulSoup库的使用,并对Scrapy框架做了初步介绍。
第6章介绍性能测试的概念和重要性,并重点介绍常用的压力测试工具的使用,以及如何用多线程提高性能和如何用JMeter进行压力测试。
第7章介绍App自动化测试的背景知识,以及Appium自动化测试框架从安装、部署到测试实践的相关知识。
第8章介绍单元测试的概念,并重点介绍如何使用pytest框架进行单元测试,还对conftest的使用方法做了必要介绍。
第2篇 Python自动化测试实战 第9章给出一个RESTful API项目案例,其中重点介绍如何使用unittest库进行单元测试和断言,并介绍如何使用Tavern工具进行接口测试。
第10章从零开始搭建一个自研测试框架并编写测试用例代码,其中重点介绍如何使用Lettuce进行行为驱动开发,以及如何使用Selenium实现跨浏览器测试。
配书资源获取 《Python自动化测试入门与进阶实战》涉及的源代码等相关资源需要读者自行下载。请在华章公司的网站(www.hzbook. com)上搜索到本书,然后单击资料下载按钮,即可在本书页面上找到下载链接。
读者对象 Python自动化测试初学者; 想提高自动化测试水平的工程师; 想转岗从事自动化测试的开发人员; 高等院校相关专业的学生; 相关培训机构的学员。 售后支持 本书涉及的内容比较庞杂,加之作者水平和成书时间所限,书中可能还存在一些疏漏和不当之处,敬请指正。
|
|