0

我在 HP Loadrunner 方面经验丰富,但在 Jmeter 方面是新手。我最近在 Jmeter 3.0 中录制了一个脚本,其中一个步骤是上传 .pdf 文件。这是一个两步过程:

步骤 1> 在上传窗口上单击浏览以从本地驱动器中找到 pdf 文件。完成此操作后,服务器将文件放在后端的临时目录中并为其创建元数据(动态值)

仅供参考:我将 PDF 文件放在本地文件夹中:“Documents\apache-jmeter-3.0\bin\”

步骤 2> 一旦指定了本地文件路径(上述步骤)并单击“上传文件”按钮,文件实际上会上传到服务器并永久存储。

在此步骤中,我需要提供该动态值(元数据)以成功提交请求。

我遇到的问题是 Jmeter 没有在上传过程的第 1 步返回元数据(或动态值)-

屏幕截图:来自 Jmeter 的请求/响应详细信息(步骤 1)

我在 Vugen 12.53 中记录了相同的步骤,它返回了 Step-1- 的动态值

屏幕截图:来自 Vugen 的请求/响应详细信息(步骤 1)

有人可以帮忙吗?谢谢!

4

3 回答 3

0

当涉及到文件上传块时,我可以看到 LoadRunner 和 JMeter 配置不匹配,我相信您应该修改Files Upload部分配置,例如:

  • 文件路径: PDF 文件的完整路径。如果您放入 JMeter 的“bin”文件夹中,它可能只是PerfTest_file_1.pdf
  • 参数名称:这个人是最重要的,这就是你似乎发生冲突的地方。查看您命名的 LoadRunner 屏幕截图

    "Name=file", "Value=blob\\PerfTest_file_1.pdf", "File=Yes", ENDITEM,
    

    并且在 JMeter 中,出于某种原因,您将此“名称”位设置为“blob”。我猜正确的设置是“文件”:

    文件上传 JMeter

其他设置好像没问题。

今后为了避免这种情况,您可以只记录您的测试场景。您需要将要上传的文件放在 JMeter 的“bin”文件夹中,以便它可以在捕获文件上传请求时找到它。

参考:

于 2016-10-29T05:44:20.077 回答
0

以防万一,这就是请求标头在 JMeter 中的样子——

屏幕截图:JMeter 请求标头

于 2016-10-31T14:54:08.180 回答
0

解决方案

只需将“ Implementation ”选择为“ Java ”或“ HttpClient3.1 ”即可解决问题。

*需要注意的点:

  • 在“文件路径”字段中,您需要提供本地驱动器中文件位置的完整路径(“C:/user/Documents/...PerfTest_file_1.pdf”)或将 PDF 文件放在“bin”文件夹中的 Jmeter 应用程序文件夹,只需提供文件名 (PerfTest_file_1.pdf) 作为路径

  • “文件”的参数值(在我的例子中是“blob”)应该与要附加的文件的“参数名称”相同*

于 2016-10-31T20:34:47.370 回答