"将响应保存到文件中的变量字段"在jMeter -

时间:2016-06-28 13:59:34

标签: jmeter

我一直在用jMeter殴打自己来学习一些新东西。我正在使用2.13。我昨天玩的一件事是"保存对文件的响应"监听器。我已经在"文件名前缀"中设置了我想要创建的文件名的路径。该领域似乎运作良好。

使用"变量名称"场更麻烦。

enter image description here

Apache文档说该字段是:

  

保存生成的文件名的变量的名称(所以它可以   稍后在测试计划中使用)

大!我给变量一个名字,并尝试访问BeanShell PostProcessor脚本中的值。

String startCode = vars.get("START_CODE");
String filename = vars.get("FILENAME");
String transNum = vars.get("TRANSACTION_NUM");
System.out.println("startCode=" + startCode + ", transNum=" + transNum + ", filename=" + filename);

我总是得到null。我昨天很多时候都在这方面被黑了。我已尝试在"用户定义变量"中预先声明变量。这至少会给我一个空字符串或我在UDF的Value列中放置的任何值。

要说我在BeanShell上也是绿色的,除了我访问其他变量获取正确的值,所以它有点混乱。

1 个答案:

答案 0 :(得分:4)

那么问题是什么?我怀疑你不能在Save responses to a file听众中使用变量名,它已经不会改变很久并且过去工作得很好。如果您需要有关使用监听器的任何其他文档,可以查看Performance testing: Upload and Download Scenarios with Apache JMeter文章。

如果您在访问PostProcessor中的Listener中生成的FILENAME变量值时遇到问题 - 由于某些PostProcessors(特别是Beanshell和类似的)可以修改,因此会出现 AFTER PostProcessors结果。所以为了能够从Beanshell访问FILENAME变量:

  1. 使用Beanshell Listener代替Beanshell PostProcessor
  2. 确保Beanshell Listener 低于保存对文件监听器的响应,否则您将遇到相同的情况