我们可以在前一个线程在Jmeter中完成请求后添加用户线程吗?
我有10个用户,想在第一个用户收到回复后添加第二个用户?即第一个用户页面需要400ms加载,我的第二个用户应该在400ms后添加。同样对于第三个用户,取决于第二个用户的加载时间?
希望这很清楚!
答案 0 :(得分:1)
有点棘手,但可以通过Inter-Thread Communication Plugins实现。
您应该创建如下测试计划:
TestPlan
- Thread Group
- Sampler
- Communication PreProcessor
- Communication PostProcessor
在TestPlan级别,您应该使用__fifoPut函数将初始值放入FIFO。
这将如下工作:在sampler启动之前,调用PreProcessor。所有100个线程都将阻塞并等待FIFO中的某些值。只有一个线程将开始工作,因为__fifoPut函数只在FIFO中添加了一个值。在采样器完成其请求后,将调用PostProcessor并将其他值放入FIFO。这将解锁另一个线程。等等。
线程解除阻塞的顺序是随机的。如果您需要严格的序列,则可以使用FIFO队列名称,该名称将线程序列按其编号链接。