【Python|接口自动化测试】使用requests库发送HTTP请求
1.requests模块介绍
Python的requests模块是一个非常流行的第三方库,用于发送HTTP请求。它简化了与Web服务进行交互的过程,使得开发人员可以更方便地处理HTTP请求和响应。
本篇文章需要对HTTP和Python有一定的了解,只会解释关键性的操作
安装requests模块,可以使用pip命令进行安装:
pip install requests
mac环境使用pip3 install requests
命令
在接口测试时,要根据接口文档进行测试。
2.发送get请求
接口URL:http://sellshop.5istudy.online/sell/shouji/query?shouji=15618919442&appkey=0c818521d387591
接口文档:
返回响应:
使用requests请求这个接口:
import requests
params = {
"shouji": "15618919442",
"appkey": "0c818521d387591"
}
result = requests.get(url="http://sellshop.5istudy.online/sell/shouji/query",params=params)
print(result.status_code)
print(result.json())
运行结果:
首先导入requests模块,以便可以使用其提供的API来发送HTTP请求
定义请求参数为params,它是一个字典,其中包含了要发送到服务器的查询字符串参数。这里有两个键值对:“shouji” 和 “appkey”。
使用requests.get()函数发送一个GET请求到指定的URL,并且通过params参数传递查询字符串。result变量存储了这个请求的结果,即Response对象。
最后打印返回响应的状态码以及返回json响应
代码实现起来还是很简单的,后面就不详细说明了
3.发送post请求
post请求是有请求中是有body的,所以在进行post请求中往往在body中进行传传参。
body中传参的格式有很多,用的最多的就是json和form-data。
首先是使用json参数调用接口
接口URL:https://jsonplaceholder.typicode.com/posts
接口请求json:
接口请求成功时响应信息:
代码实现:
import requests
json_data = {
"title": "foo",
"body": "bar",
"userId":1
}
r = requests.post(url="https://jsonplaceholder.typicode.com/posts",json=json_data)
print(r.status_code)
print(r.json())
运行结果:
form- data传递参数:
接口URL:https://dict.youdao.com/keyword/key
请求参数:
接口返回响应:
代码实现:
import requests
data = {
"text": "hello"
}
r = requests.post(url="https://dict.youdao.com/keyword/key",data=data)
print(r.status_code)
print(r.json())
运行结果: