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为预期结果,可以修改。

postman 用法_第1张图片

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

postman 用法_第2张图片

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

postman 用法_第3张图片

1.3 断言的工作原理

postman 用法_第4张图片

二、postman 关联

2.1 关联的概念

当 接口 与 接口 之间有 数据依赖 关系时,解决这种依赖关系所使用的技术,叫关联。
说明依赖:一个接口返回的数据,被另外一个接口 发送请求时使用
举例:
    1.登录接口,返回的令牌数据,被 添加员工 接口作为请求头使用。
    2.添加员工成功,返回员工id,可以被 查询、修改、删除员工接口,在url中使用

2.2 关联的实现步骤

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

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

    postman 用法_第5张图片

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)

    postman 用法_第6张图片
    postman 用法_第7张图片

  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类型
    * 不支持复杂数据类型
    * 不支持参数测试
应用场景:量简单数据,不需要做参数测试

postman 用法_第8张图片

3.3.2 json文件
优点:
    * 支持bool类型。
    * 支持复杂数据类型(列表,字典等)。
    * 支持参数测试
缺点:相同的数据量,json文件要远大于 csv文件。
应用场景:测试数据量相对较少。需要进行 参数测试

postman 用法_第9张图片

3.4 读取文件

  • 根据 使用位置 不同,有两种方法。
    postman 用法_第10张图片
  • 代码(Tests)中使用
    image.png

你可能感兴趣的:(postman接口设计)