用于Jmeter中REST服务测试的可变路径参数

Pan*_*kaj 8 java rest jmeter

我正在测试具有路径参数的RESt服务.

/my-service/v1/Customer/order/{ordernumber}
Run Code Online (Sandbox Code Playgroud)

我想为每个请求将数字增加1.如何在Jmeter中实现这一目标?直到现在我已经传递了一个固定的路径参数,因此我们的测试结果只有一个输入参数.

/my-service/v1/Customer/order/5247710017785924
Run Code Online (Sandbox Code Playgroud)

小智 10

开始的好处是将初始订单值放入用户定义变量

如果启动顺序为"5247710017785924",则需要创建"ordernumber"变量并将其值设置为5247710017785924.

在每个请求之后,您可以通过使用以下代码将BeanShell后处理器添加到HTTP Sampler来增加变量值:

long ordernumber = Long.parseLong(vars.get("ordernumber"));
ordernumber++;
vars.put("ordernumber",String.valueOf(ordernumber));
Run Code Online (Sandbox Code Playgroud)

并将HTTP Sampler路径中的ordernumber设置为

/my-service/v1/Customer/order/${ordernumber}
Run Code Online (Sandbox Code Playgroud)


Jad*_*dda 6

没有一个解决方案对我有用。这是我所做的

  1. 如下图定义HTTP请求并添加/api/v2/state/find/${id}请求路径
  2. 右键单击 HTTP request --> Preprocessor -> User Parameters ->Add variable -> input id and it's value
  3. 启动 HTTP 请求,这应该可以工作

HTTP 请求

用户参数