我正在使用JMeter 2.13 . 我在Post请求中发送xml作为附件
参数authenticity_token: - hjghjsdfhjghsjkdg,utf8: - ✓HTTPHeader Manager: - Accept:text / xml,Content Type: - text / xml Port 80,Method Post,Protocol http
我正在附件中添加文件地址
System.getProperty(“user.dir”)File.separator“NewXMLEvent.xml”
我想发送xml作为文件而不是参数或正文,这个xml文件是用代码创建的,它不起作用,我是否需要添加任何其他 Headers 信息或数据
我得到的回应是 XML content expected
2 回答
你的方法不起作用 .
如果需要 upload 文件 - 有效值为:
文件的完整路径(推荐)
文件的相对路径
在JMeter启动期间或通过user.properties文件设置的JMeter属性
如果你需要 send XML file content :
切换到"Body Data"标签
使用__FileToString()函数指定源XML文件位置
您甚至可以将__FileToString()函数与__Beanshell()函数结合起来动态获取文件路径,如:
我知道,语法是可怕的,这就是我使用Function Helper Dialog生成函数的原因 .
有关上述和其他有用的JMeter函数的更多信息,请参阅How to Use JMeter Functions posts系列 .
我尝试了在答案1中发布的上述三个步骤,但实际上没有一个工作 . 我正在测试REST API .
我的XML文件大约有5000行,所以如果我可以在文件的完整路径上指向1,那将会很方便 . 但是,这不起作用 . 我还有三个其他参数,除了一个名为content的参数,必须提供值 .
在JMeter 3.0中,使用Method as POST,在我提供的参数下:param1 value1 param2 value2 param3 value3对于内容,我使用编辑器打开XML文件,然后选择全部,然后复制 . 在JMeter for Value-> Detail - 这将打开一个便笺簿 . 粘贴XML内容 . 仅仅为了内容,我检查了编码和等于 .
这样我就可以发送我的XML文件了 . 希望这也适用于其他人