接口测试用例模板
接口测试用例要说明请求怎么发、断言怎么写、数据怎么校验。不要只写“调用接口成功”,那样无法判断是否真的测到了业务逻辑。
标准字段
| 字段 |
说明 |
| 接口名称 |
例如:用户登录接口 |
| 请求方法 |
GET、POST、PUT、PATCH、DELETE |
| 请求路径 |
例如 /api/login |
| 前置条件 |
是否需要登录、是否需要准备数据 |
| 请求头 |
Content-Type、Authorization 等 |
| 请求参数 |
Query、Path、Body 参数 |
| 测试点 |
正常、异常、边界、权限、幂等等 |
| 预期响应 |
状态码、业务码、字段值、错误提示 |
| 数据校验 |
数据库、缓存、日志、下游接口 |
| 优先级 |
P0/P1/P2/P3 |
表格模板
| 编号 |
接口 |
方法 |
路径 |
测试点 |
请求数据 |
预期响应 |
数据校验 |
优先级 |
|
|
|
|
|
|
|
|
|
登录接口示例
| 编号 |
接口 |
方法 |
路径 |
测试点 |
请求数据 |
预期响应 |
数据校验 |
优先级 |
| API-LOGIN-001 |
登录 |
POST |
/api/login |
正确账号密码 |
{"username":"user01","password":"Aa123456"} |
HTTP 200,业务码 0,返回 token |
登录日志新增成功记录 |
P0 |
| API-LOGIN-002 |
登录 |
POST |
/api/login |
密码错误 |
{"username":"user01","password":"wrong"} |
HTTP 200 或 401,业务码非 0,提示账号或密码错误 |
登录失败次数增加或记录失败日志 |
P0 |
| API-LOGIN-003 |
登录 |
POST |
/api/login |
用户名为空 |
{"username":"","password":"Aa123456"} |
返回参数校验错误 |
不生成 token |
P1 |
| API-LOGIN-004 |
登录 |
POST |
/api/login |
缺少 password 字段 |
{"username":"user01"} |
返回缺少必填字段 |
不生成 token |
P1 |
| API-LOGIN-005 |
登录 |
POST |
/api/login |
被禁用用户登录 |
禁用用户账号 |
登录失败,提示账号不可用 |
用户状态不被修改 |
P1 |
常见断言
assert response.status_code == 200
assert response.json()["code"] == 0
assert "token" in response.json()["data"]
assert response.elapsed.total_seconds() < 1
业务接口不要只断言 HTTP 状态码,还要断言业务码、关键字段和数据变化。
接口测试覆盖角度