Postman接口测试

  1. 新建一个请求
  2. 设置请求方法
  3. 指定URL
  4. 指定请求头,放上key和value
  5. 指定请求体
  6. 断言
  7. send
  8. 查看body(HTML改成json)
    在这里插入图片描述
    在这里插入图片描述

在这里插入图片描述

接口测试的测试点

功能测试

  • 单接口功能测试:一个单独的业务,对应一个独立的接口
  • 业务场景功能功能测试:多个接口被连续调用(模拟用户实际的使用场景)

性能测试

  • 响应时长:从发送请求到接收到服务器回发响应包所经历的时间
  • 错误率:服务器运行出错的概率
  • 吞吐量:服务器单位时间内,处理请求的数量
  • 服务器资源使用率:CPU、内存、网络、磁盘等硬件资源的占用

安全测试

  • 攻击安全:木马、病毒,由具备专业安全技术,会使用专业安全测试工具的安全测试工程师负责
  • 业务安全:
    • 必须登录,才能访问用户数据

接口用例设计方法

单接口测试

正向测试

  1. 必填参数:所有必选项,给正确数据
  2. 组合参数:所有必须+任意可选,给正确数据
  3. 全部参数:所有必选+所有可选,给正确数据

反向测试

  1. 功能异常:数据格式正确,不能履行接口功能
  2. 数据异常:数据格式不正确(空、类型不符、长度不符)
  3. 参数异常
    • 多参:多出必选参数
    • 少参:缺少必选参数
    • 无参:没有指定参数
    • 错误参数:参数名错误

业务场景测试

一定是在单接口测试之后

  • 尽量模拟用户实际使用场景
  • 尽量用最少的用例,覆盖最多的接口请求
  • 一般情况下,覆盖正向测试即可

单接口测试用例

业务场景测试用例

postman断言

1、断言响应状态码

Status code:Code is 200

// 断言响应状态码为 200
pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
});
pm:postman的实例。
test() postman实例的测试方法。 这个方法有2个参数。
参1"Status code is 200"。 这个参数可以任意修改,不影响 断言。
作用:在断言结束后,显示给用户,断言结果的提示文字。
参2:是一个匿名函数调用。
pm.response.to.have.status(200); 的意思是:
postman的响应结果中,应该有 响应状态码 200。 ———— 这里的 200 是 预期结果。

2、断言包含某字符串

Response body: Contains string

pm.test("Body matches string", function () {
pm.expect(pm.response.text()).to.include("string_you_want_to_search");
});
pm:postman的实例。
test() postman实例的测试方法。 这个方法 有 2 个参数。
参1"Body matches string"。 这个参数可以任意修改,不影响 断言。
作用:在断言结束后,显示给用户,断言结果的提示文字。
参2:是一个 匿名函数 调用。
pm.expect(pm.response.text()).to.include("string_you_want_to_search"); 的意思是:
postman 期望 响应文本中,应该包含 “你想搜索的字符串”(预期结果)

3、断言JSON数据

Response body: JSON value Check

pm.test("Your test name", function () {
var jsonData = pm.response.json();
pm.expect(jsonData.value).to.eql(100);
});
pm:postman的实例。
test() postman实例的测试方法。 这个方法有2个参数。
参1"Body matches string"。 这个参数可以任意修改,不影响 断言。
作用:在断言结束后,显示给用户,断言结果的提示文字。
参2:是一个 匿名函数 调用。
var jsonData = pm.response.json(); 将整个json响应体 赋值到 变量 jsonData 上。
pm.expect(jsonData.value).to.eql(100); postman 期望 json结果中 指定key 的值为 xxx
value 能取值:success、code、message

postman关联

当接口和接口之间,有依赖关系时,需要借助postman关联技术来实现。
如:登录接口返回的令牌数据,被添加员工接口依赖

实现步骤

假定:接口B 产生的数据,被接口A依赖

  1. 发送接口B请求,获取响应数据。
  2. 将响应数据,放入公共容器(全局变量、环境变量)中。
  3. 接口A从公共容器中,提取数据,发送请求。

核心代码

// 1. 获取 响应数据,转为 json格式,保存到变量 jsonData中。
var jsonData = pm.response.json()
// 2.1 使用 全局变量做容器。
pm.globals.set("全局变量名", 全局变量值)
// 2.2 使用 环境变量做容器。
pm.environment.set("环境变量名", 环境变量值)
// 3. 在 postman 界面中(URL、请求头headers、请求体body) 提取 全局、环境变量 数据。
{{全局变量名}}/{{环境变量名}}

创建环境

  • 全局变量:在整个postman中都可以使用的变量,不需要单独创建环境。
  • 环境变量:在特定的环境下,才能使用的变量,需要给此变量创建单独的环境。

postman参数化

生成测试报告

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值