我正在尝试录制有上传功能的会话 我使用http代理服务器进行录制,录制控制器和http cookie管理器 当我尝试上传文件并单击“保存”时,会显示以下错误:
java.io.FileNotFoundException:a12-13538_110q.htm(系统不能 找到指定的文件)在java.io.FileInputStream.open(Native 方法)在java.io.FileInputStream。(未知来源)at java.io.FileInputStream。(未知来源)at org.apache.jmeter.protocol.http.sampler.PostWriter.writeFileToStream(PostWriter.java:408) 在 org.apache.jmeter.protocol.http.sampler.PostWriter.sendPostData(PostWriter.java:117) 在 org.apache.jmeter.protocol.http.sampler.HTTPJavaImpl.sendPostData(HTTPJavaImpl.java:115) 在 org.apache.jmeter.protocol.http.sampler.HTTPJavaImpl.sample(HTTPJavaImpl.java:510) 在 org.apache.jmeter.protocol.http.sampler.HTTPSamplerProxy.sample(HTTPSamplerProxy.java:62) 在 org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1060) 在org.apache.jmeter.protocol.http.proxy.Proxy.run(Proxy.java:238)
当我不使用jmeter录音时,此功能正常工作。
请帮忙。
我有什么方法可以进行这项测试吗?
答案 0 :(得分:6)
Bug 50079:Jmeter不记录文件路径。
根据您的异常,由于上述问题,jmeter无法找到要上传的文件 因此,您必须在采样器中手动设置路径,最好使用变量进行测试参数化。
根本不要使用录制和播放,或至少检查和调整录制的采样器 在您的情况下,您必须在以下内容中设置记录的http [POST]请求:
Use multipart/form-data for POST = true
- 作为请求的一部分发送文件; Send Files with Request -> File Path = PATH_TO_FILE
- 现有文件的路径,直接或使用变量。. . . UPLOAD HTTP Request Method = POST Use multipart/form-data for POST = true -- Send Files with Request -- section: File Path = ${testFile} Parameter Name = datafile MIME Type = ... . . .
答案 1 :(得分:0)
这与上面提到的缺陷有关。但解决方法是(在 Windows 上)将正在上传的文件与 JMX 文件放在同一文件夹中。 (此处不捕获文件路径,仅捕获文件名。因此,一旦捕获请求,需要相应地更新正确的绝对或相对路径。)