我在jmeter中运行来自BeanShell Sampler的Java文件,我在jmeter的cmd窗口中获得了输出成功。输出包含一系列记录器文件,我需要从cmd窗口中仅提取指定的字符串并将其用于另一个样本
答案 0 :(得分:0)
鉴于您使用ProcessBuilder运行程序,您应该能够通过Process.getInputStream()方法访问其输出
Process process = new ProcessBuilder('c:\\apps\\jmeter\\bin\\jmeter.bat', '-v').start()
String output = org.apache.commons.io.IOUtils.toString(process.getInputStream(),'UTF-8')
log.info('My program output is:')
log.info(output)
另外我建议考虑切换到JSR223 Sampler and Groovy language,这样会更快更容易:
def output = "jmeter.bat -v".execute().text
log.info('My program output is:')
log.info(output)
演示:
答案 1 :(得分:0)
这个java bean shell命令通过j meter将控制台输出,该strd将被写入文件中
System.setOut(new PrintStream(new BufferedOutputStream(new FileOutputStream(“D:\\ dir1 \\ dir2 \\ abc.out”)),true));
确保您的文件路径应该有双反斜杠