如何将图像字节数组传递给 Jmeter 中的 jdbc 函数调用
how to pass an image byte array to jdbc function call in Jmeter
我想通过 Jmeter 调用一个 jdbc 函数,我可以使用带有文本参数的简单函数来完成它,但该函数现在略有改变,它需要参数作为图像的 bytea 数组。
请建议如何从我的 PC 本地目录浏览图像,以及如何将该图像转换为字节数组并将该数组传递给 Jmeter jdbc 调用。
我认为您应该能够使用 solution, add a Beanshell PreProcessor 的选项 3 作为 JDBC 请求的子项,代码如下
import org.apache.commons.compress.utils.IOUtils;
FileInputStream in = new FileInputStream("/path/to/your/image.jpg");
ByteArrayOutputStream bos = new ByteArrayOutputStream();
IOUtils.copy(in,bos);
byte[] data = bos.toByteArray();
vars.put("image", new String(data));
并在 JDBC 请求采样器中将图像字节引用为 ${image}
。
有关 Beanshell 脚本的高级信息,请参阅 How to use BeanShell: JMeter's favorite built-in component 指南。
我想通过 Jmeter 调用一个 jdbc 函数,我可以使用带有文本参数的简单函数来完成它,但该函数现在略有改变,它需要参数作为图像的 bytea 数组。 请建议如何从我的 PC 本地目录浏览图像,以及如何将该图像转换为字节数组并将该数组传递给 Jmeter jdbc 调用。
我认为您应该能够使用 solution, add a Beanshell PreProcessor 的选项 3 作为 JDBC 请求的子项,代码如下
import org.apache.commons.compress.utils.IOUtils;
FileInputStream in = new FileInputStream("/path/to/your/image.jpg");
ByteArrayOutputStream bos = new ByteArrayOutputStream();
IOUtils.copy(in,bos);
byte[] data = bos.toByteArray();
vars.put("image", new String(data));
并在 JDBC 请求采样器中将图像字节引用为 ${image}
。
有关 Beanshell 脚本的高级信息,请参阅 How to use BeanShell: JMeter's favorite built-in component 指南。