我需要在JSR233 sampler
内部创建一个哈希映射,它将包含我将使用Java Request Sampler
调用的外部java实用程序的某些头和属性元素。我将需要创建许多哈希映射,因为键值对将根据我正在测试的系统而变化。例如,我将不得不为每个哈希映射更改JMSReplyTo
,JMSCorrelationID
,$TextBody:
字段。所有这些都是在一个线程组中完成的,但我可能还想在其他线程组中实现它。
我应该如何构建我的测试计划?是否可以创建一个包含哈希映射的全局变量?然后在相应的
JSR223 Sampler
内,对于每个测试,修改变量的值?
我不知道何时使用属性以及何时使用变量。在这种情况下,每当我创建一个新的哈希映射对象时,我希望1
var或属性会在我的测试计划中发生变化。我想知道这条路线是否可行,或者是否建议替代方案。
我想在JMeter中创建HashMap对象的原因是因为我不想拥有Java实用程序将读取和解析键值对的数千个txt文件(这些值在< strong>每个 txt文件)。
相反,我想知道是否有办法创建这个HashMap Jmeter中的对象并将其存储在可以的变量/属性对象中 在
中作为参数传递Java Request
。
如果有人引导我朝着正确的方向前进,我将不胜感激。
答案 0 :(得分:1)
而不是使用常规的获取操作
vars.get("map"); vars.put("map", map);
您可以对除字符串以外的对象使用get put操作:
vars.putObject("map", map);
稍后获取地图:
map = vars.getObject("map");
答案 1 :(得分:0)
vars
访问,有关所有可用方法和字段,请参阅JavaDoc。如果您有许多特定于用户的HashMaps,请假设上述情况 - 转到JMeter变量。如果您有一个全局HashMap和/或您需要从不同的线程组访问它 - 请转到属性。