# 导入必要的库
import requests
import pytest
# 定义一个简单的测试类,用于接口自动化测试
class TestAPI:
# 初始化方法,可以在这里设置一些全局变量或配置
def setup_class(self):
self.base_url = "https://api.example.com" # 替换为实际的API地址
# 测试获取用户信息的接口
def test_get_user_info(self):
url = f"{self.base_url}/user/12345" # 用户ID为12345
response = requests.get(url)
# 断言状态码为200
assert response.status_code == 200, f"请求失败,状态码为 {response.status_code}"
# 解析响应数据
user_data = response.json()
# 断言用户名是否正确
assert user_data["username"] == "test_user", "用户名不匹配"
# 测试创建用户的接口
def test_create_user(self):
url = f"{self.base_url}/user"
new_user = {
"username": "new_user",
"email": "new_user@example.com"
}
response = requests.post(url, json=new_user)
# 断言状态码为201(表示创建成功)
assert response.status_code == 201, f"创建用户失败,状态码为 {response.status_code}"
# 解析响应数据
created_user = response.json()
# 断言返回的用户名是否正确
assert created_user["username"] == "new_user", "创建的用户名不匹配"
# 运行pytest时会自动发现并执行这些测试用例
if __name__ == "__main__":
pytest.main(["-v"])
requests 库用于发送HTTP请求,以及 pytest 库用于编写和运行测试。TestAPI 类中包含了多个测试方法。每个方法都是一个独立的测试用例。setup_class 方法在所有测试开始前执行一次,通常用于设置一些全局配置。test_get_user_info:测试获取用户信息的接口,断言返回的状态码和用户名是否符合预期。test_create_user:测试创建用户的接口,断言创建是否成功以及返回的用户名是否正确。pytest.main() 可以手动运行测试,-v 参数表示详细输出。如果你有任何问题或需要进一步的帮助,请随时告诉我!
上一篇:input().split()在python中的用法
下一篇:python pwd
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站