Java 比恩希尔取样器在执行后未停止

Java 比恩希尔取样器在执行后未停止,java,jmeter,Java,Jmeter,我正在使用beanshell采样器打印csv文件中的响应,但在完成后不会停止 可以执行哪些操作以使打印后停止。下面是我在其他线程组的预处理器中使用的acctId的示例代码 import java.io.FileWriter; import java.util.Arrays; import java.io.Writer; import java.util.List; char SEPARATOR = ','; public void writeLine(FileWriter writer, S

我正在使用beanshell采样器打印csv文件中的响应,但在完成后不会停止

可以执行哪些操作以使打印后停止。下面是我在其他线程组的预处理器中使用的acctId的示例代码

import java.io.FileWriter;
import java.util.Arrays;
import java.io.Writer;
import java.util.List;

char SEPARATOR = ',';

public void writeLine(FileWriter writer, String[] params, char separator)

{
   boolean firstParam = true;

   StringBuilder stringBuilder = new StringBuilder();

   String param = "";
   for (int i = 0; i <params.length; i++)

   {

      param = params[i];

      log.info(param);

       if (!firstParam)

       {
               stringBuilder.append(separator);

       }

       stringBuilder.append(param);

       firstParam = false;

   }

   stringBuilder.append("\n");

   log.info(stringBuilder.toString());

   writer.append(stringBuilder.toString());

}

String csvFile = "D:/jmeter/test1/result.csv"; // for example '/User/Downloads/blabla.csv'

//String[] params = {"${acctId}", "${tranId}"};
String[] params = {"${acctId}"};

FileWriter fileWriter = new FileWriter(csvFile, true);

writeLine(fileWriter, params, SEPARATOR);

fileWriter.flush();

fileWriter.close();
导入java.io.FileWriter;
导入java.util.array;
导入java.io.Writer;
导入java.util.List;
字符分隔符=',';
public void writeLine(FileWriter writer,字符串[]参数,字符分隔符)
{
布尔值firstParam=true;
StringBuilder StringBuilder=新的StringBuilder();
字符串参数=”;

对于(int i=0;i您可以使用“查看结果树”采样器或“简单数据编写器”保存响应消息。只需单击“配置”并使用另存为XML,然后选择“保存响应数据(XML)”对于其他必填字段。尽管如此,不建议将其用于负载测试。

建议使用属性将变量保存到CSV文件中

  • 将下一行添加到user.properties文件(位于JMeter安装的“bin”文件夹中)

  • 重新启动JMeter以获取属性
  • 当你喜欢的时候,现在就是这样:

    您将在
    result.jtl
    文件中看到一个额外的列,其中包含每个采样器的
    acctId
    变量的值


  • 还应注意。您将能够使用以下内容替换代码:

    new File('D:/jmeter/test1/result.csv') << vars.get('acctId') << System.getProperty('line.separator')
    

    new File('D:/jmeter/test1/result.csv')您到底看到了什么行为?您所说的“停止”是什么意思?它一直在执行,计时器没有在右上角停止。我必须手动停止它。我不想在文件中显示变量值以外的任何内容,而且我需要将多个在不同线程组提取的变量一起写入一个文件,Simple Data Writer无法解决我的问题。任何其他帮助都可以受到高度赞赏。
    
    jmeter -n -t test.jmx -l result.jtl 
    
    new File('D:/jmeter/test1/result.csv') << vars.get('acctId') << System.getProperty('line.separator')