如何使用Jmeter根据用户输入动态更改变量或值?

如何使用Jmeter根据用户输入动态更改变量或值?,jmeter,jmeter-4.0,Jmeter,Jmeter 4.0,我正在使用JMeter测试一个webOE站点,用户可以选择一个产品,然后选择宽度、高度、颜色和其他选项。根据宽度和高度,返回不同的价格 我使用脚本记录器来记录创建产品的步骤,但是在HTTP请求中使用设置值设置参数。我可以使用CSV数据集更改宽度和高度,但价格值似乎是硬编码的或基于脚本记录器设置的。我想不出一种方法,让价格变量是动态的,并根据变化进行更新,或者在宽度和高度变化时重新计算。 我需要根据CSV带来的不同宽度和高度更改价格。测试的原因是,我可以测试,即使在对站点进行代码更改之后,每次的

我正在使用
JMeter
测试一个
webOE
站点,用户可以选择一个产品,然后选择宽度、高度、颜色和其他选项。根据宽度和高度,返回不同的价格

我使用脚本记录器来记录创建产品的步骤,但是在
HTTP请求中
使用设置值设置参数。我可以使用
CSV
数据集更改
宽度
高度
,但价格值似乎是硬编码的或基于脚本记录器设置的。我想不出一种方法,让价格变量是动态的,并根据变化进行更新,或者在宽度和高度变化时重新计算。


我需要根据
CSV
带来的不同宽度和高度更改价格。测试的原因是,我可以测试,即使在对站点进行代码更改之后,每次的定价都是一样的。任何建议或示例都会有帮助。

最有可能的是,正在使用客户端计算
ItemPrice

根据:

JMeter不是浏览器,它在协议级别工作。就web服务和远程服务而言,JMeter看起来像一个浏览器(或者更确切地说,是多个浏览器);但是JMeter并不执行浏览器支持的所有操作。特别是,JMeter不执行HTML页面中的Javascript。它也不像浏览器那样呈现HTML页面(可以以HTML等形式查看响应,但计时不包括在任何示例中,一次只显示一个线程中的一个示例)

因此,如果我的假设是正确的,并且这个
ItemPrice
来自JavaScript,那么您将无法通过修改参数来触发更改

  • 根据维度以某种方式获得价格计算的算法(查看页面源代码,四处询问,联系开发人员)
  • 添加为请求的子级
  • 即使“语言”下拉列表中存在JavaScript,也要在中实现登录
  • 用生成的值替换记录的硬编码价格