我正在尝试使用 JMeter 对 Rails 应用程序进行负载测试。该应用程序的一个关键部分涉及一个包含文本输入和文件上传的表单。它在浏览器中运行良好,但是当我尝试在 JMeter 中发布该页面时,Rails 将多部分表单的所有部分保存为临时文件,这会导致在查找字符串并获取临时文件时出现问题。
似乎不同之处在于,从浏览器来看,包含文本输入的多部分请求片段如下所示:
-----------------------------7d93b4186074c
Content-Disposition: form-data; name="field_name"
test
-----------------------------7d93b4186074c
而从 JMeter 看起来像这样:
-----------------------------7d159c1302d0y0
Content-Disposition: form-data; name="field_name"
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
test
-----------------------------7d159c1302d0y0
显然,Rails 看到前者并将其解释为纯文本值并将其视为字符串,但看到后者并将其保存到临时文件中。
我无法找到一个设置来说服 JMeter 不要以多部分形式为非文件字段发送额外的标题。
有没有办法说服 Rails 忽略这些标题并将文本/纯文本视为字符串而不是文本文件?或者一种在我的控制器前面放置一个过滤器来去除额外标题的快速方法?
或者,是否有更好的工具来对包含文件上传的 Rails 应用程序进行负载测试?