JMeter脚本:没有从响应代码中获取动态值

时间:2016-10-28 19:03:47

标签: jmeter httpwebresponse dynamic-values

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

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

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

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

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

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

Screenshot: Request/Response details from Jmeter (Step-1)

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

Screenshot: Request/Response details from Vugen (Step-1)

有人可以帮忙吗? 谢谢!

3 个答案:

答案 0 :(得分: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中出于某种原因将“Name”位设置为“blob”。我想正确的设置是“文件”:

    File Upload JMeter

其他设置似乎没问题。

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

参考文献:

答案 1 :(得分:0)

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

Screenshot: JMeter Request Header

答案 2 :(得分:0)

<强>解

只需在“ Java ”或“ HttpClient3.1 ”中选择“实施”即可解决问题。

*需要注意的要点:

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

  • 文件”(在我的情况下为“blob”)的参数值应与要附加的文件的“参数名称”相同*