这一次我被要求还使用JMeter在JSF应用程序中创建用于文件上传的测试脚本。 blazemeter生成的脚本如下:
generated script for input form
围起来的值是文件名。我注意到该参数不是在“文件上传”选项卡下创建的,因此我还尝试了在将参数作为JMeter中的Mime类型上传时,在应用程序日志中使用生成的内容类型将参数移至“文件上传”选项卡:
但是当我第一次尝试脚本时文件名参数仍在“参数”选项卡下(根据localhost应用程序日志,文件名为null)时,结果相同:
Application log indicating that file name is null
文件上传的UI是这个。用户单击浏览按钮,选择一个文件,然后在输入字段(导入文件)中显示文件名。然后,用户将单击“导入”按钮来提交表单:
我错过了一步还是做错了什么?
先谢谢您!任何帮助将不胜感激。
答案 0 :(得分:0)
您建立文件上传请求的方式可能是错误的,如果您想继续进行手动实验,我建议您使用Wireshark之类的嗅探工具来比较JMeter和真实浏览器发送的请求。除${VIEWSTATE}
外,其他请求应完全相同。
一个更简单的选择是使用HTTP(S) Test Script Recorder重新记录请求(您只能记录一个请求)。
准备进行记录的JMeter。最简单的方法是使用JMeter Templates功能
准备浏览器进行记录,请参考浏览器文档,以使用localhost
作为代理主机并使用8888
作为代理端口来设置代理,需要设置代理< strong>适用于所有协议,没有没有排除。 Mozilla Firefox(唯一的免费和开放源代码的流行浏览器,此外,它具有独立的代理配置(并非源自操作系统))的相关配置为: