day10 电商系统后台API——接口测试(使用postman)
【没有所谓的运气🍬,只有绝对的努力✊】
目录
实战项目简介:
1、用户管理(8个)
1.1 登录
1.2 获取用户数据列表
1.3 创建用户
1.4 修改用户状态
1.5 根据id查询用户
1.6 修改用户信息
1.7 删除单个用户
1.8 分配用户角色
2、权限(2个)
2.1 获取所有权限列表
2.2 左侧菜单权限
3、角色管理(7个)
3.1 角色列表
3.2 添加角色
3.3 根据id查询角色
3.4 修改角色
3.5 删除角色
3.6 角色授权
3.7 删除角色指定权限
编辑
4、商品分类管理
4.1 商品分类数据列表
4.2 添加商品分类
4.3 根据id查询分类
4.4 编辑分类
4.5 删除分类
5、分类参数管理
5.1 参数列表
5.2 添加动态参数或静态属性
5.3 编辑参数
5.4 根据id查询参数
5.5 删除参数
6、商品管理
6.1 商品列表
6.2 添加商品
6.3 编辑商品
6.4 查询指定id 的商品
6.5 删除商品
7、订单管理(该接口里面无数据,暂时不能测试)
7.1 订单列表
7.2 修改订单(不可测)
7.3 查询指定订单id(不可测)
8、数据统计
9、导出测试用例集+环境文件
实战项目简介:
本项目接口包含36个接口。全部来自项目的真实接口,有鉴权。
登录接口会返回一个token,后续的接口里面都需要依赖token鉴权,需要再请求Header中加上参数Authorization,值就是登录接口返回的token。
面记录下我自己用postman做接口测试的相关过程。
1、用户管理(8个)
1.1 登录
根据接口文档,使用postman进行接口测试。
请求路径:{{base_url}}/api/private/v1/login
请求方法:post
请求参数: {"username": "admin", "password": "123456"}
将登录接口返回的token,设置环境变量,保存为token,给后续接口使用。
后续接口里面的 请求Header中加上参数Authorization,值就是登录接口返回的token。
1.2 获取用户数据列表
请求路径:/api/private/v1/users
请求方法:get
请求参数:
query: 可选)
pagenum:1 (必填)
pagesize:'20 必填)
Header参数:
Authorization: 登录接口返回的token
断言状态码
1.3 创建用户
请求路径:/api/private/v1/users
请求方法:post
请求参数:
{ "username": ";李未来", "password": "123456", "email": "ch00j@163.com", "mobile": "13772008989" }
Header参数:
Authorization: 登录接口返回的token
将创建用户成功后,返回的id值,存入环境变量中,用来后续修改。
添加断言
1.4 修改用户状态
请求路径:/api/private/v1/users/{uId}/state/{type}
请求方法:put
请求参数:
uId: 用户id值,创建用户返回的 (必填)
type:true/false (必填)
Header参数:
Authorization: 登录接口返回的token
1.5 根据id查询用户
请求路径:/api/private/v1/users/{id}
请求方法:get
请求参数:
id:用户id值,创建用户返回的 (必填)
Header参数:
Authorization: 登录接口返回的token
1.6 修改用户信息
请求路径:/api/private/v1/users/{id}
请求方法:put
请求参数:
id:用户id值,创建用户返回的 (必填)
Header参数:
Authorization: 登录接口返回的token
1.7 删除单个用户
请求路径:/api/private/v1/users/{id}
请求方法:delete
请求参数:
id:用户id值,创建用户返回的 (必填)
Header参数:
Authorization: 登录接口返回的token
1.8 分配用户角色
请求路径:/api/private/v1/users/{id}/role
请求方法:put
请求参数:
id:用户id值,创建用户返回的 (必填)
Body参数:
rid:"05"
Header参数:
Authorization: 登录接口返回的token
2、权限(2个)
2.1 获取所有权限列表
请求路径:/api/private/v1/rights/list
请求方法:get
请求参数:
type:tree/list (tree树状展示,list列表展示)
Header参数:
Authorization: 登录接口返回的token
2.2 左侧菜单权限
请求路径:/api/private/v1/menus
请求方法:get
请求参数: 无
Header参数:
Authorization: 登录接口返回的token
3、角色管理(7个)
3.1 角色列表
请求路径:/api/private/v1/roles
请求方法:get
请求参数:无
Header参数:
Authorization: 登录接口返回的token
3.2 添加角色
请求路径:/api/private/v1/roles
请求方法:post
请求参数:
{ "roleName": "string", "roleDesc": "string" }
其中:roleName 必填;roleDesc选填
Header参数:
Authorization: 登录接口返回的token
3.3 根据id查询角色
请求路径:/api/private/v1/roles/{{role_id}}
请求方法:get
请求参数:
id:30 添加角色返回的roleId值
Header参数:
Authorization: 登录接口返回的token
3.4 修改角色
请求路径:/api/private/v1/roles/{{role_id}}
请求方法:put
请求参数:
id:30 添加角色返回的roleId值
Body参数:
{ "roleName":"销售负责人", "roleDesc":"销售" }
Header参数:
Authorization: 登录接口返回的token
3.5 删除角色
请求路径:/api/private/v1/roles/{{role_id}}
请求方法:delete
请求参数:
id:30 添加角色返回的roleId值
Header参数:
Authorization: 登录接口返回的token
3.6 角色授权
请求路径:/api/private/v1/roles/{{role_id}}/rights
请求方法:post
请求参数:role_id
Header参数:
Authorization: 登录接口返回的token
3.7 删除角色指定权限
请求路径:/api/private/v1/roles/{{role_id}}/rights/101
请求方法:delete
请求参数:role_id
Header参数:
Authorization: 登录接口返回的token
4、商品分类管理
4.1 商品分类数据列表
请求路径:/api/private/v1/categories
请求方法:get
请求参数:
Header参数:
Authorization: 登录接口返回的token
4.2 添加商品分类
请求路径:/api/private/v1/categories
请求方法:post
请求参数:
{
"cat_pid":"1002",
"cat_name":"休闲食品2",
"cat_level":"1"
}
Header参数:
Authorization: 登录接口返回的token
将添加商品返回结果的cat_id,存入环境变量中,方便后续的根据ID查询分类、编辑分类、删除分类。
4.3 根据id查询分类
请求路径:/api/private/v1/categories/{{cat_id}}
请求方法:get
请求参数:cat_id
Header参数:
Authorization: 登录接口返回的token
4.4 编辑分类
请求路径:/api/private/v1/categories/{{cat_id}}
请求方法:put
请求参数:cat_id
Header参数:
Authorization: 登录接口返回的token
4.5 删除分类
请求路径:/api/private/v1/categories/{{cat_id}}
请求方法:delete
请求参数:cat_id
Header参数:
Authorization: 登录接口返回的token
5、分类参数管理
5.1 参数列表
请求路径:/api/private/v1/categories/{{cat_id}}/attributes?sel=only
请求方法:get
请求参数:cat_id
Header参数:
Authorization: 登录接口返回的token
5.2 添加动态参数或静态属性
请求路径:/api/private/v1/categories/{{cat_id}}/attributes
请求方法:post
请求参数:cat_id
Header参数:
Authorization: 登录接口返回的token
将返回结果的attr_id,存入环境变量中,方便后续的编辑参数接口使用。
5.3 编辑参数
请求路径:/api/private/v1/categories/{{cat_id}}/attributes/{{attr_id}}
请求方法:put
请求参数:cat_id attr_id
Header参数:
Authorization: 登录接口返回的token
5.4 根据id查询参数
请求路径:/api/private/v1/categories/{{cat_id}}/attributes/{{attr_id}}
请求方法:get
请求参数: cat_id attr_id
Header参数:
Authorization: 登录接口返回的token
5.5 删除参数
请求路径:/api/private/v1/categories/{{cat_id}}/attributes/{{attr_id}}
请求方法:delete
请求参数: cat_id attr_id
Header参数:
Authorization: 登录接口返回的token
6、商品管理
6.1 商品列表
请求路径:/api/private/v1/goods?query&pagenum=10&pagesize=10
请求方法:get
请求参数:
Header参数:
Authorization: 登录接口返回的token
6.2 添加商品
请求路径:/api/private/v1/goods
请求方法:post
Body请求参数:
{
"goods_name": "手机壳_华为",
"goods_cat": "1,2,3",
"goods_price": "19.9",
"goods_number":"200",
"goods_weight":"100",
"goods_introduce":"手机壳",
"pics":"",
"attr":"手机壳"
}
Header参数:
Authorization: 登录接口返回的token
将响应结果里面的 goods_id值,存入环境变量中。便于后续的编辑商品、查询指定id商品、删除商品使用。
6.3 编辑商品
请求路径:/api/private/v1/goods/{{goods_id}}
请求方法:put
Body参数:
{
"goods_name": "Iphone手机壳111",
"goods_cat": "1,2,3",
"goods_price": "19.9",
"goods_number":"200",
"goods_weight":"100",
"goods_introduce":"手机壳",
"pics":"",
"attr":"手机壳"
}
Header参数:
Authorization: 登录接口返回的token
6.4 查询指定id 的商品
请求路径:/api/private/v1/goods/{{goods_id}}
请求方法:get
请求参数:goods_id
Header参数:
Authorization: 登录接口返回的token
6.5 删除商品
请求路径:/api/private/v1/goods/{{goods_id}}
请求方法:delete
请求参数:goods_id
Header参数:
Authorization: 登录接口返回的token
7、订单管理(该接口里面无数据,暂时不能测试)
7.1 订单列表
请求路径:/api/private/v1/orders
请求方法:get
请求参数:
Header参数:
Authorization: 登录接口返回的token
7.2 修改订单(不可测)
由于7.1 查不到订单数据,拿不到订单id,这个修改订单接口暂时测不了。
7.3 查询指定订单id(不可测)
8、数据统计
8.1 基于时间统计
请求路径:/api/private/v1/reports/type/1
请求方法:get
请求参数:无
Header参数:
Authorization: 登录接口返回的token
9、导出测试用例集+环境文件
完整的项目,使用接口测试,还有参数化,完成啦。中间也有磕磕绊绊,写断言的时候,靠着前两天学习的接口测试那块,回忆起来的,没有翻笔记。哈哈哈哈哈
加油,今天的任务已完成,yes。完整的接口测试项目。yes!!!