那我先给你简述一下Python中使用requests进行接口测试的步骤:
- 导入requests模块
- 发送HTTP请求(GET、POST等)
- 获取HTTP响应
- 解析响应结果
- 断言检查结果是否符合预期
下面我来给你详细讲解Python中使用requests进行接口测试的方法,并附上两个实例说明。
第一条示例:
我们以测试百度搜索接口为例:
- 导入requests模块
import requests
- 发送HTTP请求
我们使用requests的get方法来发送HTTP GET请求:
url = 'https://www.baidu.com/s?'
params = {'wd': 'requests'}
r = requests.get(url, params=params)
这里我们向百度的搜索接口发送了一个包含参数"wd=requests"的GET请求。
- 获取HTTP响应
response = r.text
这里我们获取了响应的文本内容。
-
解析响应结果
-
断言检查结果是否符合预期
assert 'python-requests' in response
完整代码如下:
import requests
url = 'https://www.baidu.com/s?'
params = {'wd': 'requests'}
r = requests.get(url, params=params)
response = r.text
assert 'python-requests' in response
这个例子中,我们发送一个GET请求,获取了百度搜索的结果页面,然后检查页面内容中是否包含"python-requests"这个关键字。
第二条示例:
我们以测试Jira接口为例:
- 导入requests模块
import requests
- 发送HTTP请求
我们使用requests的post方法来发送HTTP POST请求:
url = "https://jira.example.com/rest/api/2/issue"
data = {
"fields": {
"project": {
"key": "TEST"
},
"summary": "REST ye merry gentlemen.",
"description": "Creating of an issue using project keys and issue type names using the REST API",
"issuetype": {
"name": "Bug"
}
}
}
headers = {
"Content-Type": "application/json",
"Authorization": "Basic base64(user:password)"
}
response = requests.post(url, json=data, headers=headers)
这里我们向Jira的REST API发送一个包含JSON格式数据的POST请求,创建了一个Bug类型的Issue。
- 获取HTTP响应
response = r.json()
这里我们获取了响应的JSON格式数据。
- 解析响应结果
assert response['fields']['project']['key'] == 'TEST'
这里我们断言检查创建的Issue的Project Key是否是"TEST"。
- 断言检查结果是否符合预期
完整代码如下:
import requests
url = "https://jira.example.com/rest/api/2/issue"
data = {
"fields": {
"project": {
"key": "TEST"
},
"summary": "REST ye merry gentlemen.",
"description": "Creating of an issue using project keys and issue type names using the REST API",
"issuetype": {
"name": "Bug"
}
}
}
headers = {
"Content-Type": "application/json",
"Authorization": "Basic base64(user:password)"
}
response = requests.post(url, json=data, headers=headers)
response = response.json()
assert response['fields']['project']['key'] == 'TEST'
这个例子中,我们使用POST请求向Jira的REST API创建了一个Bug类型的Issue,并检查了创建的Issue的Project Key是否正确。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python中requests做接口测试的方法 - Python技术站