接口测试
接口测试目的
- 确保接口能够正确接收和返回数据
- 验证接口是否实现了预期的功能
接口测试工具
- Postman/Jmeter
测试用例设计
- 与功能测试用例设计方法类似
- 基础验证: 发送有效请求,验证返回状态码是否为200 验证返回数据格式是否符合约定(JSON/XML)
- 参数测试:
缺少必填参数
参数值为空/null
参数值超出范围
参数类型不匹配
json入参的拼接
- 请求地址:ip地址输入测试环境ip+端口号+接口编码+加密信息
入参body的拼接
- 接口测试使用postman拼接入参,Params--选择raw(入参有的话就复制修改,没有就自己拼接)
- 根据接口文档-一般是看序号,明确参数层级
- json入参中需要根据数据的逻辑结构和需求来决定使用{}还是[]
使用{}的场景:表示一个对象:当需要表示一个具有多个属性的实体时,使用{}
json { "id": 1, "name": "Kimi", "email": "kimi@example.com" }使用{}的场景:嵌套结构:当某个属性的值是一个复杂的数据结构时,使用{}来表示嵌套的对象json { "id": 1, "name": "Kimi", "address": { "city": "Beijing", "country": "China" } }使用[]的场景:表示一个列表或集合:当需要表示一组有序的值时,使用[]json { "id": 1, "name": "Kimi", "hobbies": ["reading", "traveling", "coding"] }使用[]的场景:数组中的元素可以是任意类型:数组可以包含不同类型的数据,但通常用于存储同类型的数据json [ { "id": 1, "name": "Kimi" }, { "id": 2, "name": "Alice" } ]拼接时如何区分使用{}和[]
-
{} 是对象(Object),[] 是数组(Array) 符号 名称 用途 示例 如何取值 {}对象 表示一组键值对,键必须是字符串,值可以是任意类型 {"name":"Tom","age":20}用点号或中括号: obj.name或obj["name"][]数组 表示有序列表,元素可以是任意类型(数字、字符串、对象、甚至嵌套数组) [1,2,3]或[{"id":1},{"id":2}]用下标(从 0 开始): arr[0] - 看到键值对,一定是 {}
* 如:
{"status":200,"data":{...}} - 看到逗号分隔的纯值列表,一定是 []
* 如:
["red","green","blue"]如何区分要配置为数组
- 查看接口文档
- 明确标注为数组type: array:文档中会用 [] 表示数组
- 示例值为数组:即使文档未明确说,如果示例中某个字段的值是[]或包含多个元素,则该字段是数组
- 根据业务逻辑判断
- 是否需要多个值: 单个用户地址 → 对象({}) 多个用户地址 → 数组([{}, {}])
- 是否动态扩展:
固定字段(如用户名、密码)→ 对象
动态标签(如用户可添加多个标签)→ 数组
- 测试工具验证
- 使用 Postman 发送测试请求:
故意传递非数组值(如 "product_ids": 1001)
观察错误响应:
json { "error": "Invalid type: expected array, got integer" }
- THE END -
最后修改:2025年8月27日
非特殊说明,本博所有文章均为博主原创。
如若转载,请注明出处:https://www.qian777.cn/44.html
共有 0 条评论