万本电子书0元读

万本电子书0元读

顶部广告

Python Web自动化测试设计与实现电子书

资深测试发专家撰写,凝聚自己多年发经验,系统且深阐释利用Python行Web自动化测试涉及的方法和实践

售       价:¥

纸质售价:¥59.60购买纸书

215人正在读 | 0人评论 6.2

作       者:陈晓伍

出  版  社:清华大学出版社

出版时间:2019-04-01

字       数:24.3万

所属分类: 科技 > 计算机/网络 > 软件系统

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
本书是资深测试发专家的经验结晶,由浅深地阐释了Web自动化测试的相关技术,包括Web UI自动化测试、API自动化测试及测试相关的基础发。通过学习本书,读者可以基本掌握Web测试相关的大部分技术。本书是测试相关人员的技术指导。书中每个技术都有示例代码,理论与实践相结合的方式能够使读者快速理解Web自动化测试。 本书循序渐地讲解了Web自动化测试的各项知识,使任何层级的读者都能从中受益。绪论部分介绍自动化方面的基础知识,帮助读者少走弯路,正确学会自动化测试。第1~3章介绍Selenium、Python以及Web UI自动化的相关基础知识。第4章和第5章介绍Selenium IDE和Selenium常规对象口。第6章介绍Web UI自动化特殊场景处理。第7章介绍UnitTest单元测试框架。第8章介绍分层框架设计与实现。第9章介绍测试脚本的部署。第10章和第11章介绍Web API相关基础知识。第12章介绍通过Python发送HTTP请求。第13章介绍API工具的设计与实现。第14章介绍Web服务的集成工作。第15章介绍HTTP Mock的发。 本书适合Web测试人员、Web自动化人员、Web发人员等初中级读者以及希望使用Python作为编程语言的软件测试工程师参考。<br/>【推荐语】<br/>资深测试发专家撰写,凝聚自己多年发经验,系统且深阐释利用Python行Web自动化测试涉及的方法和实践<br/>【作者】<br/>陈晓伍,毕业于北京航空航天大学计算机科学与技术专业,资深测试发专家,有超过10年测试发相关经验,对测试及自动化技术有较深的理解与应用,发过若干自动化框架与平台。曾就职过新浪、当当、科大讯飞等互联网公司,负责新浪微博客户端、当当电商网站以及灵犀语音助手等产品的自动化测试工作。现在创业公司担任测试经理。精通Python语言,擅长Java、Selenium、QTP。创建testqa.cn测试社区,活跃于CSDN与51testing社区。<br/>
目录展开

封面页

书名页

版权页

内容简介

作者简介

前言

为什么要写这本书

本书特色

读者对象

本书主要内容

阅读本书的建议

本书配套课件

进一步学习建议

勘误和支持

致谢

目录

绪论

如何学习自动化

自动化项目选型

周期长且需求稳定

功能模块有回归需求

操作场景易于自动化

自动化的正确打开方式

考虑成本效益

选择合适的工具

适当分层测试

提高被测系统的可测性

没有必要的完全自动化

尽可能优化时间

最少步骤进入到被测场景

持续进行集成测试

快速修复失败脚本

及时反馈报告结果

第1章 Selenium基础

1.1 Selenium的历史和分支

1.2 Selenium的特点

1.3 Selenium名词说明

1.3.1 Selenium RC

1.3.2 Selenium Server

1.3.3 Selenium WebDriver

1.3.4 Selenium Client

1.3.5 Selenium Grid

1.3.6 Selenium IDE

1.4 Selenium基本原理

1.5 Selenium环境搭建

1.5.1 Windows环境搭建

1.5.2 Ubuntu环境搭建

1.5.3 MacOS环境搭建

1.6 Selenium调用不同浏览器

1.6.1 调用Firefox浏览器

1.6.2 调用Chrome浏览器

1.6.3 调用IE浏览器

1.6.4 IE浏览器安全机制设置

1.7 Selenium Docker的使用

1.7.1 Docker环境安装

1.7.2 Selenium Docker镜像下载

1.7.3 Docker下运行Selenium脚本

1.8 Selenium 3说明

1.8.1 不再支持Selenium RC

1.8.2 仅支持JDK 1.8.0以上版本

1.8.3 Selenium IDE支持Chrome插件

1.8.4 FireFox需要安装独立驱动

1.8.5 仅支持IE 9.0以上版本

1.8.6 支持微软的Edge浏览器

1.8.7 支持官方的SafariDriver

第2章 Python编程基础

2.1 基础语法

2.1.1 Python语句执行

2.1.2 Python语法格式

2.1.3 Python变量与类型

2.1.4 Python运算符与表达式

2.2 控制语句

2.2.1 if-else语句

2.2.2 for语句

2.2.3 while语句

2.2.4 continue语句

2.2.5 break语句

2.2.6 pass语句

2.3 模块化

2.3.1 函数

2.3.2 类与实例

2.3.3 模块文件

2.3.4 包

2.4 基础数据结构

2.4.1 列表

2.4.2 元组

2.4.3 字典

2.4.4 遍历数据

2.5 输入/输出

2.5.1 命令行输入/输出

2.5.2 文件输入/输出

2.6 内置函数

2.6.1 id函数

2.6.2 dir函数

2.6.3 help函数

2.6.4 type函数

2.6.5 isinstance函数

2.6.6 zip函数

2.6.7 filter函数

2.6.8 map函数

2.6.9 reduce函数

2.7 异常

2.7.1 异常捕获

2.7.2 自定义异常

2.8 魔法特性

2.8.1 列表推导式

2.8.2 迭代器

2.8.3 生成器

2.8.4 闭包

2.8.5 装饰器

2.8.6 内省机制

2.9 并发任务

2.9.1 多进程

2.9.2 多线程

2.9.3 协程

2.10 编解码

2.10.1 源码文件编码

2.10.2 解释器默认编码

2.10.3 外部文件编码

2.10.4 数据库编码

2.10.5 编解码函数

第3章 Web UI自动化基础

3.1 HTML与DOM简介

3.2 学习元素定位方式

3.3 CSS定位技术

3.4 使用工具帮助定位

3.4.1 IE的Developer Tool

3.4.2 Firefox的Web开发者工具

3.4.3 Chrome的开发者工具

3.4.4 Firefox的XPath Checker插件

3.4.5 Chrome的XPath工具

3.4.6 Firefox的CSS插件

3.4.7 Chrome的CSS工具

3.4.8 Firefox的WebDriver Element Locator插件

3.5 Selenium中进行元素定位

3.5.1 获取一个定位元素

3.5.2 获取一组定位元素

3.5.3 匹配非第一个元素

第4章  Selenium IDE

4.1 Selenium IDE安装

4.1.1 Firefox安装

4.1.2 Selenium IDE在线安装

4.1.3 Selenium IDE本地安装

4.2 Selenium IDE功能介绍

4.2.1 Selenium IDE窗口

4.2.2 菜单栏

4.2.3 地址栏

4.2.4 工具栏

4.2.5 用例管理区

4.2.6 用例脚本开发区

4.2.7 信息输出区

4.3 Selenium IDE使用

4.3.1 Selenium IDE录制与回放

4.3.2 Selenium IDE脚本编辑

4.3.3 Selenium IDE元素定位

4.3.4 Selenium IDE匹配模式

4.3.5 Selenium IDE脚本转换

第5章 Selenium常规对象接口

5.1 浏览器对象操作

5.1.1 查找元素方法

5.1.2 浏览器窗口方法

5.1.3 Cookie处理方法

5.2 WebElement对象操作

5.3 文本框对象操作

5.4 按钮对象操作

5.5 下拉列表对象操作

5.6 链接对象操作

第6章 Web UI自动化特殊场景处理

6.1 处理多窗口测试场景

6.2 处理浏览器弹框场景

6.2.1 Alert对象及方法

6.2.2 优雅地处理Alert弹框

6.3 Selenium进行键盘鼠标操作

6.3.1 键盘操作

6.3.2 鼠标操作

6.4 非Web控件的操作实现

6.5 Selenium执行JavaScript及操作DOM

6.6 Selenium截屏操作

第7章 UnitTest单元测试框架

7.1 常规使用方式

7.2 测试套件使用

7.3 TestLoader的使用

7.4 UnitTest加载流程

第8章 分层框架设计与实现

8.1 数据驱动层

8.1.1 文件存储

8.1.2 数据库存储

8.2 定位符驱动层

8.2.1 本地文件存储

8.2.2 远程服务存储

8.3 页面操作层

8.4 业务逻辑层

8.4.1 公共业务

8.4.2 常规业务

8.5 结果驱动层

8.5.1 日志Logger记录

8.5.2 自定义Logger记录

8.5.3 邮件通知结果

8.6 异常处理层

8.6.1 程序异常处理

8.6.2 断言异常处理

8.6.3 自定义异常类

第9章 测试脚本部署

9.1 使用SVN管理测试脚本

9.1.1 SVN服务安装

9.1.2 SVN客户端安装

9.1.3 SVN使用简介

9.1.4 SVN操作规范

9.2 远程执行用例场景

9.3 Selenium Grid模块及搭建

9.3.1 Selenium Grid环境搭建

9.3.2 Selenium Grid使用

9.4 持续集成的自动化测试

第10章 Web API介绍

10.1 HTTP简介

10.1.1 HTTP请求报文

10.1.2 HTTP响应报文

10.2 Web API介绍

10.3 REST API介绍

第11章 Web API自动化基础

11.1 正则表达式模块学习

11.1.1 字符搜索

11.1.2 字符替换和分割

11.1.3 表达式修饰符

11.1.4 其他事项

11.2 XML读写模块的学习

11.2.1 读取XML文档

11.2.2 写入XML文档

11.3 JSON模块的学习

11.3.1 JSON串生成

11.3.2 JSON串解析

11.4 MD5、BASE64编解码

11.4.1 BASE64编解码

11.4.2 MD5加密

11.4.3 数据序列化

第12章 Python发送HTTP请求

12.1 HTTP请求发送

12.1.1 requests模块安装

12.1.2 发送GET请求

12.1.3 发送POST请求

12.1.4 发送multipart/form-data请求

12.1.5 发送其他类型请求

12.2 HTTP请求认证

12.2.1 HTTP Basic Auth

12.2.2 HTTP Digest Auth

12.2.3 OAuth认证

12.2.4 自定义认证

12.3 URL的编解码

12.4 HTTP响应内容验证

12.4.1 状态码验证

12.4.2 响应头验证

12.4.3 响应体验证

12.5 多线程发送请求

12.5.1 函数式多线程

12.5.2 类继承式多线程

第13章 API工具设计与实现

13.1 最简单的API工具

13.1.1 请求方法设置

13.1.2 请求头设置

13.1.3 支持文件上传

13.1.4 简单结果验证

13.2 测试数据读取

13.2.1 测试数据格式

13.2.2 数据存储方式

13.2.3 实现数据读取

13.3 测试数据用例化

13.3.1 用例基本信息

13.3.2 用例套件信息

13.3.3 用例模板信息

13.4 测试流程控制

13.4.1 钩子函数接口设计

13.4.2 钩子函数接口调用

13.4.3 钩子函数接口实现

13.5 测试结果验证

13.5.1 完全匹配

13.5.2 内容包含

13.5.3 正则匹配

13.5.4 JSONPath

13.6 测试数据记录

13.6.1 结果记录

13.6.2 日志记录

第14章 集成为Web服务

14.1 Web服务简介

14.1.1 Web框架选择

14.1.2 DEMO实现

14.1.3 框架开发学习

14.2 Web上启动用例执行

14.2.1 运行参数接收

14.2.2 测试请求处理

14.3 Web上查看测试结果

14.3.1 任务列表页

14.3.2 用例结果页

14.4 持续集成的API自动化测试

14.4.1 用例集保存

14.4.2 用例集执行

第15章 HTTP Mock开发

15.1 HTTP Mock介绍

15.2 HTTP Mock分析

15.3 HTTP Mock实现

15.3.1 根据请求URL过滤

15.3.2 根据请求方法过滤

15.3.3 根据请求头过滤

15.3.4 根据请求数据过滤

参考文献

结束语

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部