从Paw

时间:2015-12-18 01:07:12

标签: paw-app

鉴于以下API响应,我想使用“Response Parsed Body”动态变量并从数组中选择一个随机ID:

[
  {
    "id": 1
  },
  {
    "id": "2"
  }
]

使用[0].id会给我1,但无法选择随机项。这可能是JSONPath的一个问题,但让Paw实现这样做会很好。

2 个答案:

答案 0 :(得分:2)

执行此操作的最佳方法是创建自定义动态值。

function getRandomInt(min, max) {
  return Math.floor(Math.random() * (max - min)) + min;
}


function evaluate(context) {
  var request = context.getRequestByName('OtherRequestName')
  var lastExchange = request.getLastExchange()
  var body = JSON.parse(lastExchange.responseBody)
  var list = body // path to list within body
  var i = getRandomInt(0, list.length)
  return list[i].id
}

答案 1 :(得分:0)

let list = JSON.parse(responseBody);
let random_num = _.random(list.length);
let randomId= list[random_num].id;
postman.setEnvironmentVariable("randomId", randomId);