当前位置: 首页> 汽车> 新车 > 接口自动化--Postman(2)

接口自动化--Postman(2)

时间:2025/7/13 3:29:50来源:https://blog.csdn.net/zxcvbnm_1206/article/details/141130711 浏览次数: 0次

【黑马客达天下-登录单接口测试】

接口用例设计思路

单接口测试

  • 正向测试
    • 必填参数 P2(优先级)
    • 全部参数 P2
  • 逆向测试
    • 参数数据为空 P3
    • 参数类型不符 P3
    • 参数长度不符 P3
    • 业务规则不符 P3
      ##案例:完成KDTX项目登录接口用例测试
  • 需求
    • 已注册正确的用户名和密码,登录成功
    • 用户名或密码错误,登录失败,提示“用户名或密码错误”
  • 要求
    • 按照接口测试思路进行测试点分析
    • 从测试点转化为测试用例
    • 使用Postman进行接口测试

1、提取测试点
在这里插入图片描述

2、设计测试用例
在这里插入图片描述

3、使用Postman进行接口测试

  • 步骤
    • 点击测试集中的 “Add folder” 添加文件夹管理测试用例
    • 点击文件夹上的 “Add Request” 添加请求实现测试用例

在这里插入图片描述
【注意】bug文字性提示错误bug;postman中可用ctrl+d进行复制用例

postman断言

  • 作用:让postman工具代替人工自动判定预期结果和实际结果是否一致
  • 用法
    在这里插入图片描述

响应状态码断言

  • 模块名称:Status code: Code is 200

  • 模块内容:

    // 判断响应状态码是否等于200
    pm.test("Status code is 200", function () {pm.response.to.have.status(200);
    });
    

包含指定字符串断言

  • 模块名称:Response body: Contains string
  • 模块内容:
    // 判断响应结果是否包含指定字符串
    pm.test("Body matches string", function () {pm.expect(pm.response.text()).to.include("string_you_want_to_search");
    });
    

JSON数据断言

  • 模块名称:Response body: JSON value check
  • 模块内容:
    // 判断响应结果是否包含指定字符串
    pm.test("Your test name", function () {var jsonData = pm.response.json();pm.expect(jsonData.value).to.eql(100);
    });
    // 其中value是指实际json数据中的参数key,100是指预期结果
    

针对KDTX项目登录成功接口用例完成断言设置

需求及分析:
① 断言响应状态码为200

pm.test("断言响应状态码为200", function () {pm.response.to.have.status(200);
});

② 断言响应数据中包含‘成功’

pm.test("断言响应数据中包含'成功'", function () {pm.expect(pm.response.text()).to.include("成功");
});

③ 断言JSON数据中msg值为‘操作成功’

pm.test("断言JSON数据中msg值为'操作成功'", function () {var jsonData = pm.response.json();pm.expect(jsonData.msg).to.eql('操作成功');
});

postman参数化

问题:每条测试用例都添加一个请求,重复读太高,怎么解决?

postman参数化介绍

  • 场景:测试脚本中仅测试数据不一样,使用参数化提高脚本复用
  • 步骤
    • 测试数据保存在测试文件单独维护
    • 引用数据文件实现脚本循环调用

postman参数化实现

  • 准备数据文件
    • json格式
    • [{“username”:“manager”,“password”:“123456“,“status”:“200”,“message”:“成功”, “msg”:“操作成功”}, {“username”:”",“password”:"123456“,“status”:“200”,“message”:“错误”, “msg”:“用户名或密码错误”}]
  • 引用数据文件数据
    • 请求参数中获取
      • **{{}}**引用相关对象的key eg:{{username}}
    • 代码中获取
      • Postman内置data对象引用key eg: data.status

针对KDTX项目登录接口参数化实现

  • 需求:
    针对登录接口,将请求数据和断言数据组织成JSON文件,并使用Postman批量运行
  • 分析:
    ① JSON文件如何组织?
    ② 如何使用后Postman批量运行?
    在这里插入图片描述
    在这里插入图片描述

在这里插入图片描述
【总结】
1、参数化的作用是什么?
提高测试脚本复用性

2、Postman如何实现参数化?

  1. 准备数据文件
  2. 引用数据文件
    请求参数中获取: {{变量名}}
    代码中获取: data.变量名
  3. 批量执行测试用例
关键字:接口自动化--Postman(2)

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: