使用python的requests、pytest、allure-pytest库进行接口自动化测试
下面将详细介绍如何结合 Python 的requests 、pytest 和Allure 来实现接口自动化测试,主要分为以下几个步骤:
1. 环境准备
首先需要安装所需的库,可以使用pip 进行安装:
1 | pip install requests pytest allure-pytest |
上述命令中,–alluredir 指定了 Allure 测试报告数据的保存目录。
4. 生成 Allure 测试报告
4.1 安装 Allure 命令行工具
你需要先安装 Allure 命令行工具,具体安装方法可以参考 Allure 官方文档 https://allurereport.org/docs/install/ 。
4.2 生成测试报告
使用以下命令生成 Allure 测试报告:
1 | allure generate ./allure-results -o ./allure-report --clean |
allure open ./allure-report


### 5. 更多功能
#### 5.1 添加测试用例描述
可以使用@pytest.mark 和allure 装饰器为测试用例添加描述信息:
```python
import requests
import allure
import pytest
@allure.feature('用户信息接口测试')
class TestAPI:
@allure.story('获取单个用户信息')
@allure.title('验证获取用户信息接口是否正常')
@allure.description('该测试用例用于验证获取用户信息接口的响应状态码和响应数据是否符合预期')
def test_get_user_info(self):
url = 'https://jsonplaceholder.typicode.com/users/1'
response = requests.get(url)
assert response.status_code ==200
assert 'name' in response.json()
5.2 处理测试用例的前置和后置操作
可以使用pytest 的fixture 来处理测试用例的前置和后置操作:
import requests
import allure
import pytest
@pytest.fixture
def setup():
# 前置操作
print("开始测试")
yield
# 后置操作
print("测试结束")
@allure.feature('用户信息接口测试')
class TestAPI:
@allure.story('获取单个用户信息')
@allure.title('验证获取用户信息接口是否正常')
@allure.description('该测试用例用于验证获取用户信息接口的响应状态码和响应数据是否符合预期')
def test_get_user_info(self, setup):
url = 'https://jsonplaceholder.typicode.com/users/1'
response = requests.get(url)
assert response.status_code ==200
assert 'name' in response.json()
通过以上步骤,你就可以结合requests 、pytest 和Allure 实现接口自动化测试,并生成详细的测试报告。