需要在jmeter中形成自定义请求

Need to form custom request in jmeter

我需要在 jmeter 中创建一个类似于以下格式的自定义请求:

{
"items": [
        {
            "id": "1",
            "productId": 1234
         }
        {
            "id": "2",
            "productId": 1218
        }
....
}

在这里我必须生成一些介于 10-15 之间的随机数并创建 id 块(基于随机数)。 有人可以帮助我如何相应地形成请求并在 jmeter 中实现这一点。

提前致谢。

  1. 添加 JSR223 PreProcessor 作为需要发送此生成值的请求的子项

  2. 将以下代码放入“脚本”区域

    import groovy.json.JsonBuilder
    import org.apache.commons.lang3.RandomUtils
    
    
    def items = []
    def itemsNo = RandomUtils.nextInt(10, 16)
    
    1.upto(itemsNo) { id ->
        def productId = RandomUtils.nextInt(1111, 10000)
        def item = [:]
        item.put('id', id as String)
        item.put('productId', productId)
        items.add(item)
    }
    
    def payload = new JsonBuilder([items: items]).toPrettyString()
    vars.put('payload',payload)
    
  3. 在需要引用生成的JSON

    的地方使用${payload}JMeter Variable

演示:

更多信息: