从手动到自动:用 Python requests 把接口测试用例跑起来
【摘要】 从手动点接口到用 Python requests 写自动化用例:环境准备、第一条 GET/POST 用例、pytest 执行,以及四个实践建议。
一、为什么要把接口测试自动化
手动在 Postman 里点接口,测完一个版本,下个版本又要重来一遍。把高频、稳定的接口用例沉淀为脚本,可以做到:
- 回归时一键执行,不用重复手工点;
- 用例可版本管理,变更可追溯;
- 接入 CI,每次构建自动跑。
二、环境准备
pip install requests pytest
三、写第一条用例
以一个用于练习的公开 HTTP 回显接口为例(把 BASE 换成你的真实接口地址):
import requests
BASE = "https://test-api.local"
def test_get_with_params():
r = requests.get(BASE + "/get", params={"name": "dev"}, timeout=10)
assert r.status_code == 200
data = r.json()
assert data["args"]["name"] == "dev"
def test_post_json():
payload = {"sku": "ECS-001", "count": 2}
r = requests.post(BASE + "/post", json=payload, timeout=10)
assert r.status_code == 200
assert r.json()["json"] == payload
执行:
pytest test_api.py -v
四、四个实践建议
- 超时一定要设:timeout=10,避免用例卡死;
- 断言要具体:不只断状态码,也断关键业务字段;
- 数据与代码分离:把 URL、账号等放到配置文件或环境变量;
- 先跑通、再封装:不要一上来就写框架。
五、小结
接口自动化不需要一开始就很重。从一条 requests 用例开始,把每天重复点的接口固化下来,就是最有价值的第一步。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)