gpt4 book ai didi

java - 如何使用 JMeter 在 JSF 应用程序中上传文件

转载 作者:行者123 更新时间:2023-12-02 10:35:56 25 4
gpt4 key购买 nike

这次我还被要求创建一个使用 JMeter 在 JSF 应用程序中上传文件的测试脚本。 blazemeter生成的脚本如下:

generated script for input form

圆圈内的值是文件名。我注意到该参数不是在“文件上传”选项卡下创建的,因此我还尝试将参数移动到“文件上传”选项卡,在 JMeter 中作为 Mime 类型上传时使用应用程序日志中生成的内容类型:

Jmeter file upload tab

Generated content type

但是当我第一次尝试脚本时,它具有相同的结果,其中文件名参数仍在“参数”选项卡下(根据本地主机应用程序日志,文件名为空):

Application log indicating that file name is null

文件上传的UI是这样的。用户单击浏览按钮,选择一个文件,然后文件名显示在输入字段(导入文件)中。然后,用户将单击“导入”按钮来提交表单:

File upload UI

我是否遗漏了某个步骤或做错了什么?

提前谢谢您!任何帮助将不胜感激。

最佳答案

您构建文件上传请求的方式可能是错误的,如果您想继续手动实验,我建议使用类似 Wireshark 的嗅探器工具比较 JMeter 和真实浏览器发送的请求。 。除了 ${VIEWSTATE} 之外,请求应该完全相同。

一种更简单的选择是使用 HTTP(S) Test Script Recorder 重新记录请求(您只能记录一个请求) 。

  1. 准备 JMeter 进行记录。最简单的方法是使用 JMeter Templates特点

    • 从 JMeter 主菜单中选择文件 -> 模板 -> 录制,然后单击“创建”

      enter image description here

    • 展开 HTTP(S) 测试脚本记录器并单击“开始”

      enter image description here

  2. 准备浏览器进行录制,请参阅浏览器文档以便使用 localhost 作为代理主机,使用 8888 作为代理端口来设置代理,需要为所有协议(protocol)设置代理,无排除。 Mozilla Firefox(唯一免费开源的流行浏览器,而且它具有不从操作系统派生的独立代理配置)的相关配置为:

    enter image description here

  3. 将要录制的文件复制到 JMeter 安装的“bin”文件夹。如果省略此步骤,JMeter 将无法正确记录请求。请参阅Recording File Uploads with JMeter如果需要,请参阅文章了解更多详细信息
  4. 在浏览器中执行请求 - 相关HTTP Request采样器将在Recording Controller下生成

关于java - 如何使用 JMeter 在 JSF 应用程序中上传文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53293852/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com