【问题标题】:Assign a value from Json response array object to environment variable in Postman将 Json 响应数组对象中的值分配给 Postman 中的环境变量
【发布时间】:2020-04-16 19:55:34
【问题描述】:

我有一个 JSON 正文响应,其中包含一个数组对象。

{

     "tokens": [
        {
            "baseValue": "need this value to be extracted"
        }
    ]
}

以下测试脚本无法提取并设置在环境变量中

var jsonData = JSON.parse(responseBody);

    pm.test('get value from Response', function(){
            if ( jsonData.tokens.hasOwnProperty("baseValue") ) {
                var xauth = jsData.tokens.baseValue;
                 postman.setEnvironmentVariable("xauth", xauth);
            }
        });

怎么了?有人可以帮我实现这一目标

【问题讨论】:

    标签: postman postman-testcase


    【解决方案1】:
    var jsonData = JSON.parse(responseBody);
    
    pm.test('get value from Response', function(){
            if ( jsonData.tokens[0].hasOwnProperty("baseValue") ) {
                var xauth = jsonData.tokens[0].baseValue;
                 postman.setEnvironmentVariable("xauth", xauth);
            }
        });
    

    tokens 属性是一个数组并且只有一个对象,您需要在引用中添加 [0] 以说明您想在第一个对象中使用 baseValue 属性。

    你可以用新的 Postman 语法这样写:

    let jsonData = pm.response.json();
    
    pm.test('get value from Response', function(){
            if ( jsonData.tokens[0].hasOwnProperty("baseValue")) {
                 let xauth = jsonData.tokens[0].baseValue;
                 pm.environment.set("xauth", xauth);
            }
        });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-10-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-09
      • 2020-02-15
      • 1970-01-01
      相关资源
      最近更新 更多