javascript - 如何使用 JSR 后处理器将数据写入 jmeter 中的 csv
问题描述
我正在使用 JMeter v4.0,我需要使用 JSR223 后处理器从测试响应中获取数据,如何将提取的数据存储到 CSV 文件中?
解决方案
发布的问题有 2 个部分
- 从响应中提取数据
- 将提取的值存储在 CSV 文件中
以下代码有助于解决上述两个问题。需要根据您的要求调整此代码(在正则表达式、文件写入选项等方面)。但是给出了基本骨架
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.io.FileWriter;
//This helps in fetching the response of the request
String response=prev.getResponseDataAsString();
//Modify regex as necessary
Pattern myPattern = Pattern.compile("responseValue=(\\w+);");
Matcher myMatch = myPattern.matcher(response);
if (myMatch.find()){
//This is solely to check the value extracted in Debug Sampler
//since myMatch.group(#) can be used directly in this code to write to file
vars.put("extractedValue", myMatch.group(1));
//File write operations
String fileName = "example.csv";
File file = new File(fileName);
//Remove true for overwriting the file
FileWriter fileWriter = new FileWriter(file, true);
//Values to be written may include additional groups. Remember to separate them with comma
String valueToWriteInFile = myMatch.group(1)+",othervalues";
fileWriter.append(valueToWriteInFile);
fileWriter.append("\n");
//File needs to be properly closed to see the values written by JMeter on the file.
//Else, the file will only be created without any values
fileWriter.close();
}
用于构建上述代码的参考链接:
PS 对于需要执行上述功能的请求,使用 JSR223 后处理器作为子处理器。
推荐阅读
- python-3.x - macosx 10.14.15 上的 mkvirtualenv 故障排除
- javascript - 我正在操作一个对象数组,以便使用函数 _.reject 和 _.uniqBy 使用 lodash 获得唯一值
- python-3.x - Networkx 中心性测量入站/出站边缘的“计数”
- java - OpenCV:可以用 Java 打开压缩视频吗?
- sql - sql server中的特定选择
- python - PySpark 未正确读取 CSV
- amazon-web-services - AWS IoT 规则 startwith()、endwith() 不适用于名称中包含连字符的 JSON 属性
- python - 如何在 TensorFlow 中实现二维高斯滤波器(如 scipy.ndimage.gaussian_filter)?
- python - 如何在 plotly 中为一个 x 值绘制具有多个 y 值的折线图?
- c++ - 在返回另一个函数的函数中执行程序时出错