阿里P8:你们公司就这水平?看看这份Python接口自动化测试手册
前阵子有幸参加了个2021英雄技术会,与会了一个阿里P8技术大佬,我兴致勃勃地把我们公司的整套测试流程展示给大佬看,并重点介绍了我司自动化测试,谁知道大佬看完后来了句:就这?就这水平?随后丢给我一份Python接口自动化测试手册并说道,回去好好看看吧
果然如获至宝,大伙学习后果然水平有很大提升,现在把这份Python接口自动化测试手册展示给大家看看,点击下面即可免费获取哈
Python接口自动化测试手册
以下是部分内容展示
目录
第 1 章 Fiddler
1.1 抓 firefox 上 https 请求
1.1.1 网页不安全
1.1.2 fiddler 设置
1.1.3 导出证书
1.1.4 导入到 firefox 浏览器
第 2 章 requests
2.1 发 get 请求
2.1.1 环境安装
2.1.2 get 请求
第 3 章 unitttest
3.1 unittest 简介
3.1.1 unittest 简介
第 4 章 封装与调用
4.1 函数与参数化
4.1.1 登录函数
4.1.2 保存草稿
第 5 章 爬虫利器 beautifulsoup4
5.1.1 安装
5.1.2 解析器
5.1.3 打印首页博客的时间
第 6 章 数据库读取
6.1 读 excel 数据 xlrd
6.1.1 环境准备
6.1.2 基本操作
6.1.3 excel 存放数据
第 7 章 项目实战:git+jenkins 持续集成
7.1.1 项目结构
福利
第 1 章 Fiddler
1.1 抓 firefox 上 https 请求
前言
fiddler 是一个很好的抓包工具,默认是抓 http 请求的,对于 pc 上的 https 请求,会提示网页不安全,这时候需要在浏览器上安装证书。
1.1.1 网页不安全
1.用 fiddler 抓包时候,打开百度网页:https://www.baidu.com
2.提示:网页不安全
1.1.2 fiddler 设置
1. 打开菜单栏:Tools>Fiddler Options>HTTPS
勾选 Decrypt HTTPS traffic,里面的两个子菜单也一起勾选了
1.1.3 导出证书
1. 点右上角 Actions 按钮
2. 选第二个选项,导出到桌面,此时桌面上会多一个文件:FiddlerRoot.cer,如下图。
1.1.4 导入到 firefox 浏览器
1. 打开右上角浏览器设置》选项》高级》证书》查看证书》证书机构》导入
2. 勾选文件导入
3. 打开文件后,会弹出个框,勾选三个选项就完成操作啦。
如果还不能成功,那就重启浏览器,重启电脑了。
第 2 章 requests
2.1 发 get 请求
前言
requests 模块,也就是老污龟,为啥叫它老污龟呢,因为这个官网上的 logo 就是这只污龟, 接下来就是学习它了。
2.1.1 环境安装
1.用 pip 安装 requests 模块
>>pip install requests
2.1.2 get 请求
1. 导入 requests 后,用get 方法就能直接访问 url 地址,如: http://www.cnblogs.com/yoyoketang/,看起来是不是很酷
2. 这里的 r 也就是 response,请求后的返回值,可以调用 response 里的 status_code 方法查看状态码
3. 状态码 200 只能说明这个接口访问的服务器地址是对的,并不能说明功能 OK,一般要查看响应的内容,r.text 是返回文本信息
第 3 章 unitttest
3.1 unittest 简介
前言
熟悉 java 的应该都清楚常见的单元测试框架 Junit 和 TestNG,这个招聘的需求上也是经常见到的。python 里面也有单元测试框架-unittest,相当于是一个 python 版的 junit。
python 里面的单元测试框架除了 unittest,还有一个 pytest 框架,这个用的比较少,后面有空再继续分享。
3.1.1 unittest 简介
1. 先导入 unittest
2. 用 help 函数查看源码解析
3. 查看描述:
Python unit testing framework, based on Erich Gamma's JUnit and Kent Beck's Smalltalk testing framework.
翻译:python 的单元测试框架,是基于 java 的 junit 测试框架
第 4 章 封装与调用
4.1 函数与参数化
前言
前面实现了参数的关联,那种只是记流水账的完成功能,不便于维护,也没什么可读性,接下来这篇可以把每一个动作写成一个函数,这样更方便了。
参数化的思维只需记住一点:不要写死
4.1.1 登录函数
1.s 参数是 session 的一个实例类,先放这里,方便写后面代码
2.登录函数传三个参数,s 是需要调用前面的session 类,所以必传,可以传个登录的 url, 然后 payload 是账号和密码
4.1.2 保存草稿
1. 编辑内容的标题 title 和正文 body_data 参数化了,这样后面可以方便传不同值
2. 这里返回了获取到新的 url 地址,因为后面的 postid 参数需要在这里提取
第 5 章 爬虫利器 beautifulsoup4
5.1.1 安装
1.打开 cmd 用 pip 在线安装 beautifulsoup4
>pip install beautifulsoup4
5.1.2 解析器
1. 我们主要用第一个 html.parser,这个是 python 的标准库,可以直接用。其它几个需要安装对应解析器,下表列出了主要的解析器,以及它们的优缺点:
5.1.3 打印首页博客的时间
1.这里直接定位不好定位到,可以先定位它的父元素:class="dayTitle"
2. 用 requests 里的 get 方法打开博客首页,r.content 返回整个 html 内容,返回类型为string
3. 查找所有的 class 属性为 dayTitle 的 Tag 类
4. 获取当前 Tag 的标签为a 的 string 值
第 6 章 数据库读取
6.1 读 excel 数据 xlrd
前言
当登录的账号有多个的时候,我们一般用 excel 存放测试数据,本章介绍,python 读取excel 方法,并保存为字典格式。
6.1.1 环境准备
1.先安装 xlrd 模块,打开 cmd,输入 pip install xlrd 在线安装
>>pip install xlrd
6.1.2 基本操作
1.exlce 基本操作方法如下
# 打开 exlce 表格,参数是文件路径
data = xlrd.open_workbook('test.xlsx')
# table = data.sheets()[0] # 通 过 索 引 顺 序 获 取# table = data.sheet_by_index(0) # 通过索引顺序获取
table = data.sheet_by_name(u'Sheet1') # 通过名称获取
nrows = table.nrows # 获取总行数ncols = table.ncols # 获取总列数
# 获取一行或一列的值,参数是第几行 print table.row_values(0) # 获取第一行值print table.col_values(0) # 获取第一列值
6.1.3 excel 存放数据
1. 在 excel 中存放数据,第一行为标题,也就是对应字典里面的 key 值,如:username, password
2. 如果 excel 数据中有纯数字的一定要右键》设置单元格格式》文本格式,要不然读取的数据是浮点数
(先设置单元格格式后编辑,编辑成功左上角有个小三角图标)
第 7 章 项目实战:git+jenkins 持续集成
7.1.1 项目结构
1. 新建一个工程(一定要创建工程),工程名称自己定义
2. 在工程的根目录新建一个脚本:run_main.py,用来执行全部用例
3. 在工程下创建以下几个 pakage:
--case:这个包放 test 开头的测试用例,也可以放一些封装接口的方法,如: loginblog(如果封装的接口比较多,也可以单独放一个包)
--common:这个包放一些公共的方法,如:读取 excel 文件方法,读取 mysql、oracle,logger.py 这个是封装日志的输入
--config:cfg.ini 这里是配置文件,如邮箱的一些参数:收件人,发件人,密码等,readConfig.py 用于读取配置文件
--logs:这里存放日志信息
--report:这里存放测试报告
福利
Python接口自动化测试手册
阿里P8:你们公司就这水平?看看这份Python接口自动化测试手册相关推荐
- 阿里P8连肝一周整理出这份python自动化测试实战PDF
由于细节内容实在太多啦,也为了不影响各位大大观看,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!总共整理了有282页的PDF文档,有需要的可以查看我文章最后. 整理了一份pyt ...
- 阿里P8熬了一个月肝出这份32W字Java面试手册,Github标星31K+,持续涨星中
2022年的互联网行业竞争越来越严峻,面试也是越来越难,一直以来我都想整理一套完美的面试宝典,奈何难抽出时间,这套1000+道的Java面试手册我整理了整整1个月,上传到Git上目前star数达到了3 ...
- 阿里 P8 熬了一个月肝出这份 32W 字 Java 面试手册,在 Github 标星 31K+
2022 年的互联网行业竞争越来越严峻,面试也是越来越难,一直以来我都想整理一套完美的面试宝典,奈何难抽出时间,这套 1000+道的 Java 面试手册我整理了整整 1 个月,上传到 Git 上目前 ...
- 阿里P8熬了一个月肝出这份32W字Java面试手册,在Github标星31K+
今年的互联网行业竞争越来越严峻,不知道有没有小伙伴体验过居家办公? 全体降薪,奖金没了 这些就算了,还动不动"优化警告""大厂毕业"这种骚操作,真的挺慌的. 现 ...
- 阿里P8熬了一个月肝出这份阿里内部(泰山版),在Github标星31K+
2021年的互联网行业竞争越来越严峻,面试也是越来越难,一直以来我都想整理一套完美的面试宝典,奈何难抽出时间,这套阿里巴巴泰山版的Java面试手册我整理了整整1个月,上传到Git上目前star数达到了 ...
- 阿里P8熬了一个月肝出这份32W字Java面试手册,让32人成功进大厂
2021年的互联网行业竞争越来越严峻,面试也是越来越难,一直以来我都想整理一套完美的面试宝典,奈何难抽出时间,这套1000+道的Java面试手册我整理了整整1个月,上传到Git上目前star数达到了3 ...
- 阿里P8架构大神分享纯手写“kafka文档”看完直呼太牛!
什么是 Kafka Kafka 是由 Linkedin 公司开发的,它是一个分布式的,支持多分区.多副本,基于 Zookeeper 的分布式消息流平台,它同时也是一款开源的基于发布订阅模式的消息引擎系 ...
- 聊一聊我眼中的阿里P8、P9及以上人的水平
来源 l 乐谷说 出品 l 对白的算法屋 见过身边的阿里P8,记录一下我的观察,这里仅说技术线的P8. 1.薪资水平上,现在字节挖阿里P8的报价已经能谈到100万税前现金年薪 + 50-100 ...
- 阿里java架构师+职级_阿里 P8 高级架构师年入100W+,到底什么水平?
原标题:阿里 P8 高级架构师年入100W+,到底什么水平? 大家都知道,阿里P8高级技术专家,基本上是一线技术人能达到的最高职级,也是很多程序员追求的目标.达到年入百万的P8 Java高级架构师级别 ...
最新文章
- cisco *** 案例2
- 网关Ocelot功能演示完结,久等了~~~
- java项目怎么导出成jar_如何在eclipse将程序导出成jar文件
- 总线的集中式仲裁(讲述计时器定时查询方式,独立请求方式,链式查询方式的优缺点)
- HTML5 Web Applications
- 如何更改spring源码_如何看Spring源码、Java每日六道面试分享,打卡第二天
- getset原子性 redis_对比各类分布式锁缺陷,抓住Redis分布式锁实现命门
- java某些基础知识点整理
- 清华大学计算机考研信息汇总
- Jeff Dean 的传奇人生:超级工程师们拯救谷歌
- 面向功利编程,面向Star开源? 一个开发者的2019反思总结
- AD 绘制原理图库default designator不显示
- 丁腈橡胶的广泛应用及其特点
- 算法时代必读——《算法霸权》数学杀伤性武器的威胁
- sa结构组网方式_关于 SA/NSA 两种组网模式,你了解多少?-通信/网络-与非网
- 360n4s普通版Android7,360手机N4S有几个版本 360手机N4S各版本区别对比
- 谁能限制拼多多?可能是直播
- java关于重写正确,在Java中,以下关于方法重载和方法重写描述正确的是( )
- Python分布式爬虫框架Scrapy实战
- 华为OLT接入网ONT_MA5671配置笔记
热门文章
- 如何编写一个完整的Linux命令
- 计算机组成原理学习笔记第4章 4.10——替换算法
- HDR 风光片:相机设置及拍摄建议
- Notepad++去掉回车
- 新闻分页循环图片左右滚动代码html,jQuery响应式触屏图片左右滚动代码owl.carousel...
- macOS 安装 iTerm2
- 内嵌于球的等边三棱柱
- 在生活中的串联谐振的应用作用有哪些呢?
- 基于Aria2c的百度网盘免登录高速下载器,KinhDown v1.0.88 PC+安卓
- 扒一扒国内外最火开发语言“上位”史!升职加薪很靠谱!