接口参数边界是什么
接口参数要系统覆盖六类:缺省值(不传参数时的行为)、边界值(下界与上界恰好命中)、越界值(超出上下界一档)、类型错误、未知字段与特殊字符。分页接口是重灾区:page 与 size 的 0、1、上限与超大值都要验证,重点是服务端是否强制上限、越界时返回明确错误,而不是把请求直接砸向数据库。
基本信息
| 覆盖维度 | 缺省、边界、越界、类型错误、未知字段、特殊字符 |
|---|---|
| 分页重点 | page 的 0 与负数、size 的上限与超大值 |
| 安全视角 | 超大 size 可能拖垮数据库,验证服务端强制上限 |
| 断言要求 | 错误码、提示信息与数据完整性的多重断言 |
| 设计依据 | 等价类与边界值方法在接口参数上的落地 |
curl 示例
curl 示例
curl -s 'https://api.example.com/items?page=0&size=20'
curl -s 'https://api.example.com/items?page=1&size=100'
curl -s 'https://api.example.com/items?page=1&size=101000'
# 超过上限:预期服务端钳制或返回明确错误,而不是全量查询
curl -s 'https://api.example.com/items?page=-1&size=abc'
# 类型错误:预期 400 与字段级提示典型使用场景
- 新接口评审:按六类维度逐项设计参数用例。
- 分页接口专项:验证默认页大小、上限钳制与空结果页行为。
- 搜索与排序:非法排序字段、特殊字符关键词的行为验证。
- 批量接口:一次提交条数上限与超限提示。
- 数值型参数:精度、正负号与单位换算的边界验证。
- 安全联动:用超大参数与畸形输入验证资源保护策略。
size 无上限可能导致一次查询拖垮数据库,应验证服务端是否强制上限并返回明确错误。
未知字段的处理策略要显式约定:拒绝(严格)还是忽略(宽容),两种都合理,但实现与文档必须一致。
边界值取三档:恰好在下界、恰好在上界、越界一档;上下界两侧都要覆盖。