我有一个包含几行数据的CSV文件。
我有一个自定义Java采样器,它一次使用一行数据。
如何设置测试,CSV文件是否经过预处理,每次运行时每行都被送入java采样器? (即每次运行java sampler时,CSV文件中的下一行都应该用作输入)。
我的尝试如下所述,但我没有看到任何输出,并且java请求甚至没有运行。
这就是我设置CSV配置的方式:
而不是使用用于变量相关集的ForEach控制器,添加Loop Controller并在其下面/内部放置CSV数据集配置
更改CSV配置:停止线程onE OF = TRUE并在EOF上回收= FALSE
您将在循环中读取每个CSV行,直到文件结束。
您的Java请求采样器配置不可见,因此我的假设可能不正确,但我的期望是您使用了错误的方法。为了从Java Request采样器获取RequestLine
变量值,您需要使用JavaSamplerContext.getJMeterVariables()函数,如:
RequestLine = javaSamplerContext.getJMeterVariables().get("RequestLine");
更多故障排除提示:
RequestLine
和Debug Sampler监听器组合仔细检查您的View Results Tree变量值java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8000 -jar ApacheJMeter.jar
并将Eclipse连接到JMeter,以便您可以使用调试器,以便查看Java Request采样器的确切位置。有关JMeter测试故障排除的更多信息,请参阅How to Debug your Apache JMeter Script文章。