记录中的Jmeter上传错误

时间:2012-09-11 09:21:05

标签: java file-upload runtime-error jmeter

我正在尝试录制有上传功能的会话 我使用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录音时,此功能正常工作。

请帮忙。
我有什么方法可以进行这项测试吗?

2 个答案:

答案 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 文件放在同一文件夹中。 (此处不捕获文件路径,仅捕获文件名。因此,一旦捕获请求,需要相应地更新正确的绝对或相对路径。)