将CSV数据文件中的变量值打印到JMeter控制台

时间:2013-04-01 20:39:54

标签: jmeter

我正在使用JMeter对地址验证服务进行性能测试,该服务可以找到保险报价申请的有效地址。我正在使用soap请求从后端测试这个,我有一个带有大量搜索字符串的csv数据配置文件。

为了真正了解此服务的性能,我需要测试大量地址,即超过30000,以便服务器缓存不会影响我的性能结果。我在csv电子表格中有一个地址列表,但是其中一些地址因任何原因导致失败(例如地址不再存在,我已经在提交一个有相关地址的请求时验证了这一点)。我想从我的csv文件中删除所有失败的地址 因此,如果具有此特定搜索地址的请求失败,我想使用JMeter将搜索地址打印到控制台。我尝试使用IF控制器作为条件"${JMeterThread.last_sample_ok}" == "false"以及名称部分中的以下内容,以便将地址输出到JMeter控制台。参数searchAddress来自我的CSV输入文件。当我尝试运行它时,只需将${searchAddress}打印到控制台即可。所以if语句有效,但它不能将searchAddress识别为变量。

如果我可以将其工作,我会将所有搜索字符串复制到excel并使用公式将其从我的JMeter线程使用的地址列表中删除。

对于冗长的问题感到抱歉,但希望我已经清楚地解释了我的问题。

1 个答案:

答案 0 :(得分:0)

另一种方法是使用BeanShell PostProcessor作为子组件,其中任何组件都会收到错误;在Beanshell中,类似于:

String searchAddr = vars.get("searchAddress");

//Output to Console
System.out.println("Failed Address = " + searchAddr);

//Output to Log file etc.
log.info("Failed Address = " + searchAddr);