我正在使用JMeter v2.5 我需要从测试的响应中获取数据并从中提取数据(我正在使用常规的exp提取器)。如何将提取的数据存储到文件中?
答案 0 :(得分:33)
刚刚解决了类似的问题。使用正则表达式提取器获取数据后,添加BeanShell PostProcessor元素。使用下面的代码将变量写入文件:
name = vars.get("name");
email = vars.get("email");
log.info(email); // if you want to log something to jmeter.log file
// Pass true if you want to append to existing file
// If you want to overwrite, then don't pass the second argument
f = new FileOutputStream("/my/file/path/result.csv", true);
p = new PrintStream(f);
this.interpreter.setOut(p);
print(name + "," + email);
f.close();
答案 1 :(得分:1)
你有几个选择
希望这有帮助
答案 2 :(得分:1)
您可以使用https://jmeter-plugins.org/wiki/FlexibleFileWriter/设置示例变量。 或者使用假的Dummy Sampler。 无论如何,灵活的文件编写器适合将数据写入文件。
答案 3 :(得分:1)
import org.apache.jmeter.services.FileServer;
String path=FileServer.getFileServer().getBaseDir();
name1= vars.get("user_Name_value");
name2= vars.get("UserId_value");
f = new FileOutputStream("E://csvfile/result.csv", true); //spec-ify true if you want to overwrite file. Keep blank otherwise.
p = new PrintStream(f);
this.interpreter.setOut(p);
p.println(name1+"," +name2);
f.close();
这对我有用,我希望它也适合你
答案 4 :(得分:0)
如果您只想将提取的变量写入CSV结果文件,那么只需将user.properties添加到您想要的变量中:
sample_variables =姓名,电子邮件
根据文件:
它们将作为CSV结果文件的最后一列附加。