我的测试配置:
循环控制器
--> Beanshell Sampler
vars.put("test", "${__CSVRead(*test,0)}");
Add it to an existing array retrieved from vars.getObject
在上面的场景中,我正在循环控制器中动态构建请求负载。我必须将CSVRead函数放在循环控制器下的单独的Beanshell采样器中,因为“$ {__ CSVRead(* test,0)}”正在读取示例行,如果我在beanshell采样器内的for循环中使用它(解释模式) 。
虽然上述配置符合我的要求,但我的* .jtl文件的大小正在增加,即使是30分钟的负载测试,因为BeanShell采样器一直在进行测量。虽然我可以使用FilterResults工具过滤所需的数据,但我想知道如何在执行过程中避免这种情况,例如TestActionSampler
答案 0 :(得分:2)
请改用以下测试元素之一:
默认情况下,定时器和前/后处理器执行时间不包括到父采样器经过的时间内(除非您使用Transaction Controller明确配置这样做),使用此方法您将成为能够排除从测试结果构建有效负载所需的时间。
答案 1 :(得分:1)
我使用以下配置解决了这个问题。
Loop Controller
--> Test Action Sampler
--> Beanshell timer returning 0 at the end
vars.put("test", "${__CSVRead(*test,0)}");
Add it to an existing array retrieved from vars.getObject
return 0;