python requests 接口测试
1、get方法请求接口
url:显而易见,就是接口的地址url啦
headers:请求头,例如:content-type = application/x-www-form-urlencoded
params:用于传递测试接口所要用的参数,这里我们用python中的字典形式(key:value)进行参数的传递。
举个例子:
import requests
url="http://api.shein.com/login"
header={"content-type":"application/x-www-form-urlencoded"}
param={"user_id":123456,"email":"123456@163.com"}
timeout=0.5
response = requests.get(url, headers=header, params=param, timeout=timeout)
# response = requests.request("get",url,headers=header,params=body,timeout=timeout)
print (response.text)
2、post方法请求接口
import requests
url="http://api.shein.com/login"
header={"content-type":"application/x-www-form-urlencoded"}
param={"user_id":123456,"email":"123456@163.com"}
timeout=0.5
response = requests.post(url, headers=header, data=param, timeout=timeout)
# response = requests.request("post",url,headers=header,data=param,timeout=timeout)
print (response.text)
import requests url = "https://apipc.xinqgj.com/user/login"
payload = {"phone":"","pwd":"Ty+coun/mUj1saGV2OCK6p5kN9MNt8Uznj"}
headers = {'Content-Type': 'application/json'} response = requests.request("POST", url, headers=headers, json = payload)
print(response.text)
3、requests.Session()请求接口
import requests session = requests.Session() #定义全局session,通过 session 保持会话
class Cms(): def login(self):
url = "http://192.168.1.110:8080/cms/manage/loginJump.do"
header = {"Content-Type": "application/x-www-form-urlencoded"}
parmas = {"userAccount": "admin", "loginPwd": ""}
#通过全局 session 请求接口
res = session.post(url=url, headers=header, data=parmas)
print(res.json()) def queryUserList(self):
url = "http://192.168.1.110:8080/cms/manage/queryUserList.do"
header = {"Content-Type": "application/x-www-form-urlencoded"}
parmas = {"startCreateDate":"",
"endCreateDate":"",
"searchValue":"",
"page":""}
# 通过全局 session 请求接口
res = session.post(url=url, headers=header, data=parmas)
print(res.json()) if __name__ == '__main__':
Cms().login()
Cms().queryUserList()
注意:Python requests模块params、data、json的区别
- requests 模块发送请求有 data、json、params 三种携带参数的方法。
- params 在 get 请求中使用,data、json 在 post 请求中使用
- 常见的 form 表单可以直接使用 data 参数进行报文提交,data 的对象则是 python 中的字典类型
- 如果数据是 json 格式的参数,可直接使用 json 参数进行报文提交
 
4、接口的返回值操作
text:获取接口返回值的文本格式
json():获取接口返回值的json()格式
status_code:返回状态码(成功为:200)
headers:返回完整的响应头信息(headers['name']:返回指定的headers内容)
encoding:返回字符编码格式
url:返回接口的完整url地址
import requests url = "https://xxxx.com/user/login"
payload = {"phone":"1777982xxxx","pwd":"Ty+coun/mUj1saGV2OCK6p5kN9MNt8UznjaGsQ5A/nKPSH1NZW"}
headers = {'Content-Type': 'application/json'} response = requests.request("POST", url, headers=headers, json = payload) print(response.text)
print(response.json())
print(response.status_code)
print(response.url)
print(response.headers)
print(response.encoding)
python requests 接口测试的更多相关文章
- Python+Requests接口测试教程(1):Fiddler抓包工具
		本书涵盖内容:fiddler.http协议.json.requests+unittest+报告.bs4.数据相关(mysql/oracle/logging)等内容.刚买须知:本书是针对零基础入门接口测 ... 
- Python+Requests接口测试教程(2):
		开讲前,告诉大家requests有他自己的官方文档:http://cn.python-requests.org/zh_CN/latest/ 2.1 发get请求 前言requests模块,也就是老污龟 ... 
- python requests接口测试
		Python 标准库中的 urllib2 模块提供了你所需要的大多数 HTTP 功能,但是它的 API 太渣了.它是为另一个时代.另一个互联网所创建的.它需要巨量的工作,甚至包括各种方法覆盖,来完成最 ... 
- Python+Requests接口测试教程(2):requests
		开讲前,告诉大家requests有他自己的官方文档:http://cn.python-requests.org/zh_CN/latest/ 2.1 发get请求 前言requests模块,也就是老污龟 ... 
- python requests接口测试系列:连接mysql,获取mysql查询的值作为接口的入参
		主要思路: 连接mysql数据库,这里数据库需要使用Proxifier来设置代理,然后才能正常连接 获取mysql数据库中某一数据,作为接口的参数信息 将接口返回结果保存至csv数据表中 # -*- ... 
- 基于python+requests的简单接口测试
		在进行接口测试时,我们可以使用已有的工具(如:jmeter)进行,也可以使用python+requests进行.以下为简单的接口测试模板: 一.提取常用变量,统一配置 新建一个config.py文件, ... 
- 基于Python Requests的数据驱动的HTTP接口测试
		发表于:2017-8-30 11:56 作者:顾翔 来源:51Testing软件测试网原创 http://www.51testing.com/html/69/n-3720769-2.html ... 
- python requests库学习笔记(上)
		尊重博客园原创精神,请勿转载! requests库官方使用手册地址:http://www.python-requests.org/en/master/:中文使用手册地址:http://cn.pytho ... 
- 转载:python + requests实现的接口自动化框架详细教程
		转自https://my.oschina.net/u/3041656/blog/820023 摘要: python + requests实现的接口自动化框架详细教程 前段时间由于公司测试方向的转型,由 ... 
随机推荐
- javascript入门 之 zTree(十四 增删查改)(二)
			<!DOCTYPE html> <HTML> <HEAD> <TITLE> ZTREE DEMO - addNodes / editName / rem ... 
- MySQL exists的用法
			有一个查询如下: 1 SELECT c.CustomerId, CompanyName 2 FROM Customers c 3 WHERE EXISTS( 4 SELECT OrderID FROM ... 
- PAS
			一.概念 二.安装 打开Delphi,在主菜单上选择Component,单击Install Component,出现图所示的对话框.有两个选择,装到已经存在的包里面和装到新的包里面.我们选择后者,单击 ... 
- 实验一 熟悉IDLE和在线编程平台
			实验目的 1.掌握python IDLE集成开发环境的安装与使用 2.熟悉在线编程平台 3.掌握基本的python程序编写.编译与运行程序的方法 实验内容 1.按照实验指导安装IDLE,尝试交互式运行 ... 
- Linux服务器压力测试总结(CPU、Memory、IO等)
			测试工具:sysbench.memtester.htop 1.htop安装使用 yum install ncurses-devel # 安装依赖包 tar zxvf htop-2.2.0.tar.gz ... 
- JS:document.documentElement对象的
			document.documentElement.clientWidth 获取浏览器窗口文档显示区域的宽度,不包括滚动条. document.documentElement.clientHeight ... 
- 必须先理解的RocketMQ入门手册,才能再次深入解读
			RocketMQ入门手册 RocketMQ是一个分布式.队列模型的开源消息中间件,前身是MetaQ,是阿里研发的一个队列模型的消息中间件,后开源给apache基金会成为了apache的顶级开源项目,具 ... 
- cgi、fastCGI、php-fpm、 php-CGI的区别
			cgi.fastCGI.php-fpm. php-CGI的区别 作为面试的高频热点问题,必须来一波记录: 我们发送一个请求到收到响应之间的一个过程是什么? 如果客户端请求的是 index.html,那 ... 
- 用pytorch做手写数字识别,识别l率达97.8%
			pytorch做手写数字识别 效果如下: 工程目录如下 第一步 数据获取 下载MNIST库,这个库在网上,执行下面代码自动下载到当前data文件夹下 from torchvision.dataset ... 
- Java 中正则表达式使用
			正则表达式基本用法: 测试代码: @Test public void test01() { String str = "adsfd##4324"; // 创建正则表达式对象 Pat ... 
