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

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

、requests安装

可以通过控制台输入命令pip install requests安装requests,但是我这里主要介绍pycharm工具中安装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值并传入需要用到的地方,示例:

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()返回的内容还有别的参数

三、实例


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接口测试内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 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":&

  • python requests 库请求带有文件参数的接口实例

    有些接口参数是一个文件格式,比如fiddler 抓包参数如下显示 这个接口的 form-data fiddler 显示的和不带文件参数的接口有明显区别,显示的不是简单的键值对,所以我们也不能只通过 data给接口传参,需要再value为<file>的参数通过 files传参 data = { "CSRFName": "CSRFName", "CSRFToken": "CSRFToken", "import

  • Python3+Requests+Excel完整接口自动化测试框架的实现

    框架整体使用Python3+Requests+Excel:包含对实时token的获取 1.------base -------runmethond.py runmethond:对不同的请求方式进行封装 import json import requests requests.packages.urllib3.disable_warnings() class RunMethod: def post_main(self, url, data, header=None): res = None if

  • python+unittest+requests实现接口自动化的方法

    前言: Requests简介 Requests 是使用Apache2 Licensed许可证的 HTTP 库.用 Python 编写,真正的为人类着想. Python 标准库中的 urllib2 模块提供了你所需要的大多数 HTTP 功能,但是它的 API 有点落后了.它是为另一个时代.另一个互联网所创建的.它需要巨量的工作,甚至包括各种方法覆盖,来完成最简单的任务. 总之,大家建议大家用Requests吧. Requests的官方文档:http://cn.python-requests.org

  • python利用requests库进行接口测试的方法详解

    前言 之前介绍了接口测试中需要关注得测试点,现在我们来看看如何进行接口测试,现在接口测试工具有很多种,例如:postman,soapui,jemter等等,对于简单接口而言,或者我们只想调试一下,使用工具是非常便捷而且快速得,但是对于更复杂得场景,这些工具虽然也能实现,但是难度要比写代码更大,而且定制化受到工具得功能影响,会 遇到一些障碍,当然我们还要实现自动化等等,鉴于以上因素,我们还是要学会使用代码进行接口测试,便于维护与扩展,或者算是我们知识得补充把~ requests库是python用来

  • Python + Requests + Unittest接口自动化测试实例分析

    本文实例讲述了Python + Requests + Unittest接口自动化测试.分享给大家供大家参考,具体如下: 1. 介绍下python的requests模块 Python Requests快速入门 :http://cn.python-requests.org/zh_CN/latest/ 想必会Python基础的小伙伴们一看就懂了 2. Requests接口自动化测试: 2.1 如何利用这么利器进行接口测试,请看小demo: # -*- coding:utf-8 -* import re

  • python+requests+unittest API接口测试实例(详解)

    我在网上查找了下接口测试相关的资料,大都重点是以数据驱动的形式,将用例维护在文本或表格中,而没有说明怎么样去生成想要的用例, 问题: 测试接口时,比如参数a,b,c,我要先测a参数,有(不传,为空,整形,浮点,字符串,object,过短,超长,sql注入)这些情况,其中一种情况就是一条用例,同时要保证b,c的正确,确保a的测试不受b,c参数的错误影响 解决思路: 符合接口规范的参数可以手动去填写,或者准备在代码库中.那些不符合规范的参数(不传,为空,整形,浮点,字符串,object,过短,超长,

  • python3+requests接口自动化session操作方法

    在进行接口自动化测试时,有好多接口都基于登陆接口的响应值来关联进行操作的,在次之前试了很多方法,都没有成功,其实很简单用session来做. 1.在登陆接口创建一个全局session # -*- coding: utf-8 -*- import requests '''在登陆模块创建一个全局session,在其他接口操作时带入登陆时的session,保持session的一致性''' s = requests.Session()#定义一个全局session class testlogin(): l

  • Python+unittest+requests 接口自动化测试框架搭建教程

    一.Python+unittest+requests+HTMLTestRunner 完整的接口自动化测试框架搭建_00--框架结构简解 首先配置好开发环境,下载安装Python并下载安装pycharm,在pycharm中创建项目功能目录.如果不会的可以百度Google一下,该内容网上的讲解还是比较多比较全的! 大家可以先简单了解下该项目的目录结构介绍,后面会针对每个文件有详细注解和代码. common: --configDb.py:这个文件主要编写数据库连接池的相关内容,本项目暂未考虑使用数据库

  • python+requests接口压力测试500次,查看响应时间的实例

    接口压力测试500次,查看响应时间 import json import requests import logging logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(name)s - %(levelname)s - %(message)s') logger = logging.getLogger(__name__) restime = [] OK=[] class Restime(): def API(self,

随机推荐