我需要发送带有webservice请求的文件。但我不知道如何在WebService(SOAP)请求中指定文件。
我该怎么做?或者是否可以使用HTTP请求?
提前致谢...
答案 0 :(得分:0)
JMeter提供了至少2个关于如何将文件传递给采样器,函数或其他任何选项的选项。
选项1: __FileToString()功能。只需将其放入您的SOAP / XML-RPC数据" textarea如下:
${__FileToString(/path/to/your/file.xml,,)}
选项2:另一个更灵活的选择是通过脚本扩展读取文件(即,如果XML文件编码与您当前的系统编码不同并且已损坏)。
添加Beanshell Pre Processor作为SOAP / XML-RPC请求的子代,其代码如下:
import org.apache.commons.io.FileUtils;
import org.apache.commons.codec.binary.Base64;
String file = FileUtils.readFileToString(new File("/path/to/your/file.xml"),"UTF-8");
vars.put("file",new String(Base64.encodeBase64(file.getBytes("UTF-8"))));
它将使用UTF-8字符集读取/path/to/your/file.xml文件的内容,并将结果存储在" file" JMeter变量。
只需将${file}
或${__V(file)}
放入" SOAP / XML-RPC数据"文字区域。就是这样。
有关通过脚本编写JMeter扩展的更多详细信息,请参阅How to use BeanShell指南。
您可以使用View Results Tree侦听器获取有关请求/响应的完整信息。