乐趣区

关于postman:postman-用法

一、postman 断言

1.1 简介

 借助 postman,代替人工,主动判断,预期后果和理论后果是否统一 

1.2 断言罕用办法

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

pm:示意 postman 的一个实例 (对象)

test() postman 实例调用的测试方法。这个办法有两个参数。参 1:字符串数据。内容,用来断言完结给出 提示性 文字信息,能够任意批改。不参加断言。参 2:是一个匿名函数调用。pm.response.to.have.status(200); 的意思是:postman 的响应后果中应该含有 状态码 200。其中的 200 为预期后果,能够批改。

1.2.2 断言响应体蕴含字符串
// 断言响应体中蕴含字符串
pm.test("断言响应体中蕴含字符串", function () {pm.expect(pm.response.text()).to.include("10000");
});

1.2.3 断言 json 响应体数据
// 断言 json 指定 key 的值
pm.test("断言 success 的值 true", function () {var jsonData = pm.response.json();
    pm.expect(jsonData.success).to.eql(true);
});

1.3 断言的工作原理

二、postman 关联

2.1 关联的概念

 当 接口 与 接口 之间有 数据依赖 关系时,解决这种依赖关系所应用的技术,叫关联。阐明依赖:一个接口返回的数据,被另外一个接口 发送申请时应用
举例:1. 登录接口,返回的令牌数据,被 增加员工 接口作为申请头应用。2. 增加员工胜利,返回员工 id,能够被 查问、批改、删除员工接口,在 url 中应用

2.2 关联的实现步骤

  • A 接口响应后果,被 B 接口依赖:

    1. 发送 A 接口申请,失去响应后果
    2. 将后果中关联数据,存入 公共容器(全局变量、环境变量)
    3. B 接口,从 公共容器中提取数据,发送 B 接口申请。

2.3 外围代码

  1. 获取响应后果。var jsonData = pm.response.json()
  2. 将数据设置到 全局变量 中。

     * 全局变量,在整个 postman 随处都能应用。// 语法:pm.globals.set("全局变量名", 全局变量值)
         // 示例
         pm.globals.set("glb_age", 22)
  3. 将数据设置到 环境变量中。

     环境变量,在 特定的环境下,能力应用的变量。因而,必须先创立环境,再创立、应用环境变量。
    // 语法:pm.environment.set("环境变量名", 环境变量值)
    // 示例
    pm.environment.set("env_age", 88)


  4. 在 申请参数(URL、申请头、申请体)中 获取 变量值。

    // 示例
    {{glb_age}} 或 {{env_age}}
  5. 在 tests 中获取变量值

    pm.environment.get("环境变量名")
    pm.globals.get("全局变量名")

三、postman 参数化

3.1 简介

 将 http 申请须要的数据,和断言数据,组织到一个 文件中。从 postman 导入文件,实现 http 申请发送、断言。

3.2 利用场景

 针对同一个接口,组织 N 条 不同的 测试用例。数据格式完全一致的。实用 参数化。

3.3 数据文件

3.3.1 CSV 文件
 长处:数据组织格局简略
毛病:* 不反对 bool 类型
    * 不反对简单数据类型
    * 不反对参数测试
利用场景:量简略数据,不须要做参数测试 

3.3.2 json 文件
 长处:* 反对 bool 类型。* 反对简单数据类型 (列表,字典等)。* 反对参数测试
毛病:雷同的数据量,json 文件要远大于 csv 文件。利用场景:测试数据量绝对较少。须要进行 参数测试

3.4 读取文件

  • 依据 应用地位 不同,有两种办法。
  • 代码(Tests)中应用
退出移动版