如何使用Jmeter在前端上传文件?

How to upload file in Front End using Jmeter?

我正在尝试在前端使用 jmeter 上传文件。需要上传三个文件,然后将启用提交按钮。有什么办法可以通过jmeter吗?

我可以从后端完成。但是我想通过 Jmeter 使用网站的 URL 来对网站进行性能测试。

根据 Apache JMeter 项目的主页:

JMeter is not a browser.

As far as web-services and remote services are concerned, JMeter looks like a browser (or rather, multiple browsers); however JMeter does not perform all the actions supported by browsers. In particular, JMeter does not execute the Javascript found in HTML pages. Nor does it render the HTML pages as a browser does (it's possible to view the response as HTML etc., but the timings are not included in any samples, and only one sample in one thread is ever viewed at a time).

因此JMeter不会检查“提交”按钮的状态,它作用于协议层,在任何情况下都会发送相应的请求。

关于文件上传位本身。您可以使用 HTTP Request 采样器来完成,只需确保:

  1. 你使用POST(某些情况下可以PUT)方法

  2. Use multipart/form-data for POST 框已 选中

  3. Files Upload 部分提供了以下值:

    • 文件路径(相对于 JMeter 的“bin”文件夹的绝对路径或相对路径)
    • 参数名称(包含<input type="file" ...标签的表单名称,可以从上传页面源码中获取)
    • 文件MIME Type

实际上,构建文件上传请求的最简单方法就是记录它,有关详细信息,请参阅 Recording File Uploads with JMeter 指南。

要执行的步骤:

  1. 在测试计划中添加 HTTP 请求
  2. Select post/put 方法
  3. 输入路径
  4. Select 使用 multipart/form-data
  5. 在“文件上传”选项卡下,输入文件路径、参数名称和 MimeType。
    MIME 类型示例:image/jpeg、image/png、text/plain
  6. 保存并运行测试。

截图如下: