python+requests实现接口测试的完整步骤


Posted in Python onOctober 27, 2020

本文包括requests库的安装过程、requests库的基本语法以及一个实例(携带token登录对人员进行注册)

、requests安装

可以通过控制台输入命令pip install requests安装requests,但是我这里主要介绍pycharm工具中安装requests
一张图解释安装步骤,简单快捷

python+requests实现接口测试的完整步骤

二、requests常用语法

1、基本请求方法,包含参数传递

(1)get参数传递,示例:

url=“xxxxx”
xx={
	"xxx":"xx"
	"xxxxx":1
}
r=requests.get(url,params=xx)
print(r.text)#解析返回结果并打印出来

(2)post参数传递,示例:

url=“xxxxx”
xx={
	"xxx":"xx"
	"xxxxx":1
}
r=requests.post(url,data=xx)
print(r.text)#解析返回结果并打印出来
print(r.json())#josn格式打印出来,适用于返回是json内容

(3)文件传输,示例:

url=“xxxxx”
data1={
 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
}
filexxxx ={
	"filexxxxxxxx":open('xxx.jpg','rb')#文件内容根据实际路径修改
}
r=requests.get(url,data=data1,files=filexxxx)
print(r.text)#解析返回结果并打印出来

(4)断言,示例:

url=“xxxxx”
xx={
	"xxx":"xx"
	"xxxxx":1
}
r=requests.get(url,params=xx)
print(r.text)#解析返回结果并打印出来
assert r.status_code == 200#断言操作,将响应值与200作对比

(5)获取token值并传入需要用到的地方,示例:

python+requests实现接口测试的完整步骤

url1 = "https://xx.xx/xx/xx/2.1.0/token/sign"
r1=requests.post(url1)
t = r1.json()["token"]#返回结果是json,只取json()内容里token值并赋值到t中
#上图可以看出r1.json()返回的内容还有别的参数

三、实例

python+requests实现接口测试的完整步骤
python+requests实现接口测试的完整步骤

import random
import requests
def test_zhuce():
 url = "https://xx.xx/xx/xx/2.0.0/visitor/insert/user/"
 url1 = "https://xx.xx/xx/xx/2.1.0/token/sign"
 r1=requests.post(url1)
 t = r1.json()["token"]
 b=random.randint(1,100000)
 date = {
 "companyId" : "a9a4828204054088bb520df1e1d5b69f",
 "deadLineTime": "2020-10-22T16:00:00.000Z",
 # "fields": "[{\"fieldName\":\"code\",\"fieldType\":9,\"fieldValue\":\"C:\\Users\\Administrator\\aaaaa.jpg\",\"fieldId\":999}]",
 "groupId": "aab59cf9edb542e7a2e9e6d415ae311b",
 "headPath":"/Z",#照片路径,我这边是直接获取以前上传过的照片路径,取服务器端的值,你可以自己使用文件上传的方式上传你的照片,采用上面的二中的(3)方法
 "msToken": t,
 "name": "接口注册%d"%b,
 "propertyId": "f8ff8ea63c3440eb85b81cbccacddef0",
 "registerType":1,
 "userType": 2
}
 # header = {
 #
 # }
 # r2=requests.post(url,files=file)
 # print(r2.json())
 r = requests.post(url, data=date)
 # r=requests.post(url)
 print('\n'"状态:",r.text)
 print('\n'"头部信息:",r.headers)
 print('\n'"cookie信息:",r.cookies)
 print('\n'"token信息:",t)
 # assert r.status_code == 200

总结

到此这篇关于python+requests实现接口测试的文章就介绍到这了,更多相关python+requests接口测试内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
浅析python中的迭代与迭代对象
Oct 08 Python
python 随机生成10位数密码的实现代码
Jun 27 Python
python实现的按要求生成手机号功能示例
Oct 08 Python
Python+Django+MySQL实现基于Web版的增删改查的示例代码
May 13 Python
Python SMTP配置参数并发送邮件
Jun 16 Python
Python 保存加载mat格式文件的示例代码
Aug 04 Python
pytorch使用horovod多gpu训练的实现
Sep 09 Python
python如何爬取动态网站
Sep 09 Python
Numpy实现卷积神经网络(CNN)的示例
Oct 09 Python
Python爬虫之Selenium设置元素等待的方法
Dec 04 Python
基于pycharm 项目和项目文件命名规则的介绍
Jan 15 Python
5个pandas调用函数的方法让数据处理更加灵活自如
Apr 24 Python
python设置中文界面实例方法
Oct 27 #Python
使用python-cv2实现Harr+Adaboost人脸识别的示例
Oct 27 #Python
基于python实现坦克大战游戏
Oct 27 #Python
Django xadmin安装及使用详解
Oct 26 #Python
python实现网页录音效果
Oct 26 #Python
python实现录音功能(可随时停止录音)
Oct 26 #Python
Python用dilb提取照片上人脸的示例
Oct 26 #Python
You might like
php在文件指定行中写入代码的方法
2012/05/23 PHP
PHP中几个可以提高运行效率的代码写法、技巧分享
2014/08/21 PHP
举例详解PHP脚本的测试方法
2015/08/05 PHP
php+jQuery+Ajax实现点赞效果的方法(附源码下载)
2020/07/21 PHP
PHP连接数据库实现注册页面的增删改查操作
2016/03/27 PHP
PHP iconv()函数字符编码转换的问题讲解
2019/03/22 PHP
改版了网上的一个js操作userdata
2007/04/27 Javascript
一个简单的瀑布流效果(主体形式自写)
2013/05/27 Javascript
js实现两个值相加alert出来精确到指定位
2013/09/25 Javascript
兼容FF和IE的动态table示例自写
2013/10/21 Javascript
asp.net+jquery.form实现图片异步上传的方法(附jquery.form.js下载)
2016/05/05 Javascript
H5实现中奖记录逐行滚动切换效果
2017/03/13 Javascript
使用vue的v-for生成table并给table加上序号的实例代码
2017/10/27 Javascript
百度小程序之间的页面通信过程详解
2019/07/18 Javascript
微信小程序跳转到其他网页(外部链接)的实现方法
2019/09/20 Javascript
js+canvas实现五子棋小游戏
2020/08/02 Javascript
Element el-button 按钮组件的使用详解
2021/02/01 Javascript
[01:09:20]NB vs NAVI Supermajor小组赛A组 BO3 第二场 6.2
2018/06/03 DOTA
Python3基础之list列表实例解析
2014/08/13 Python
python解析xml文件实例分析
2015/05/27 Python
Python切片索引用法示例
2018/05/15 Python
Python文件读写常见用法总结
2019/02/22 Python
Python基本语法之运算符功能与用法详解
2019/10/22 Python
python:删除离群值操作(每一行为一类数据)
2020/06/08 Python
PySide2出现“ImportError: DLL load failed: 找不到指定的模块”的问题及解决方法
2020/06/10 Python
Python3安装模块报错Microsoft Visual C++ 14.0 is required的解决方法
2020/07/28 Python
HTML5 canvas基本绘图之绘制矩形
2016/06/27 HTML / CSS
ECCO爱步加拿大官网:北欧丹麦鞋履及皮具品牌
2017/07/08 全球购物
教师自我鉴定
2013/12/13 职场文书
证婚人搞笑证婚词
2014/01/10 职场文书
安全生产投入制度
2014/01/29 职场文书
CSS中em的正确打开方式详解
2021/04/08 HTML / CSS
Golang中interface{}转为数组的操作
2021/04/30 Golang
SQL 窗口函数实现高效分页查询的案例分析
2021/05/21 SQL Server
宝塔更新Python及Flask项目的部署
2022/04/11 Python
Java由浅入深通关抽象类与接口(上篇)
2022/04/26 Java/Android