如何在JMeter中创建具有唯一标头值的测试计划

时间:2018-09-05 21:34:24

标签: jmeter

我正在尝试使用两个请求的此测试计划,假设每个测试都有一个唯一的标头值。这是我当前测试计划的结构。

Test plan >
HTTP Request1 details:
    Host: Host1/api
        Resource: method1
        Request Method: POST
        Headers: Tenant:x1
HTTP Request2 details:
    Host: Host2/api
        Resource: method1
        Request Method: POST
        Headers: Tenant:x1

因此,该测试计划现在用于运行多个线程,以衡量去往两个不同主机的POST请求的性能,但是需要对此测试计划进行修改,以使不同的x1,x2提交相同的线程(10个并发线程) ,x3,... xn个租户。这意味着x1将并行提交10个请求,x2并行提交10个请求,等等。其余项目与测试计划相同。

请告知JMeter是否有办法实现这一目标?

1 个答案:

答案 0 :(得分:0)

您可以使用以下设置。

1。使用CSV数据集配置作为两个不同值的输入。.我拥有主机,但您可以租用Tenant:X1。因此,两列具有不同的值。

2。然后,在HTTP采样器下添加标头管理器,并传递诸如Name:-Tenant和Value:-$ {CSV_Header_Name}之类的值。 如您在下面看到的,Host1:Host1_val1被添加到请求中。 Host1来自标头管理器,其值来自CSV。

现在,如果我理解您的情况,那么您需要在线程执行期间并行运行X1 10次,并且对于所有10个(即X1),标头值都应保持相同。

为此,请使用bzm- Parallel Controller插件并复制粘贴您的请求10次。对于特定线程,bzm控制器下的所有10个请求都将以相同的标头值并行运行。

enter image description here

或者,如果每次执行时仅需要两个带有不同标头的请求,则删除bzm并行控制器,并仅放置两个请求,即HTTP1和HTTP2,如下所示。

enter image description here 希望有帮助。