首页 > 解决方案 > 断言邮递员随机变量

问题描述

我有一组简单的 API 请求,我在创建的一个测试中遇到了问题。

我有一个创建一些内容的请求,我使用内置的“$randomMACAddress”变量为我正在创建的列表生成一个随机名称。这存储在一个名为“listName”的环境变量中。在流程中的进一步测试中,我断言我正在检索的列表具有与“$randomMACAddress”匹配的名称:

    pm.test("List details are correct"), function () {
        pm.expect(jsonData.name).equal($randomMACAddress);
    }

该测试通过。

我在另一个测试中进行了相同的检查,但这次失败了,Postman 告诉我以下内容:

ReferenceError: $randomMACAddress 未定义

该请求中的测试如下:

    pm.test("List details are correct", function () {
        pm.expect(jsonData.id).equal(pm.globals.get('listID'));
        pm.expect(jsonData.name).equal($randomMACAddress);
        pm.expect(jsonData.products[0].skuId).equal('xyz');
    });

请求/测试同时运行(收集运行程序),我很困惑为什么该断言在后一个测试中失败。

试图以不同的方式初始化事物,但没有奏效。

标签: postmanpostman-testcase

解决方案


访问存储数据的方法是通过pm.variables.get("variable_name")函数而不是使用$randomMACAddress.

更多信息在这里:

https://learning.getpostman.com/docs/postman/environments_and_globals/variables

此外,chai语法将是to.equal()


推荐阅读