在jmeter中从json提取和添加多个值
我正在使用json提取器从json响应中提取多个值。我的目标是增加所有这些价值。我尝试过使用foreach控制器,但它对我不起作用在jmeter中从json提取和添加多个值,json,groovy,jmeter,Json,Groovy,Jmeter,我正在使用json提取器从json响应中提取多个值。我的目标是增加所有这些价值。我尝试过使用foreach控制器,但它对我不起作用 我有一个调试示例,确认我正在检索所有值。我需要得到所有这些值中的一些。这些值的范围从0到数千。有没有一种简单的方法来计算总和。假设您有这样一个JSON结构 { "body": [ { "count": 0 }, { "count": 23 }, { "count": -1 }, { "coun
我有一个调试示例,确认我正在检索所有值。我需要得到所有这些值中的一些。这些值的范围从0到数千。有没有一种简单的方法来计算总和。假设您有这样一个JSON结构
{
"body": [
{ "count": 0 },
{ "count": 23 },
{ "count": -1 },
{ "count": 20 },
{ "no_count_here": "really" }
]
}
然后,后处理器将添加一个名为countFromResponse
的变量,其内容为0,23,-1,20
。要对这些值求和,必须在每个逗号处拆分字符串,将字符串片段转换为整数值,然后将它们全部求和,然后将其转换回字符串。然后,该值可以存储在另一个名为countfromsponse\u SUM
的变量中
这可以使用JSR223后处理器来完成,该后处理器使用以下groovy代码:
overall = vars.get("countFromResponse_ALL")
.split(",")
.collect { Integer.valueOf(it) }
.sum()
.toString()
vars.put("countFromResponse_SUM", overall)
转换回字符串很重要,因为JMeter中的所有普通变量都将被视为字符串。假设您有这样的JSON结构
{
"body": [
{ "count": 0 },
{ "count": 23 },
{ "count": -1 },
{ "count": 20 },
{ "no_count_here": "really" }
]
}
然后,后处理器将添加一个名为countFromResponse
的变量,其内容为0,23,-1,20
。要对这些值求和,必须在每个逗号处拆分字符串,将字符串片段转换为整数值,然后将它们全部求和,然后将其转换回字符串。然后,该值可以存储在另一个名为countfromsponse\u SUM
的变量中
这可以使用JSR223后处理器来完成,该后处理器使用以下groovy代码:
overall = vars.get("countFromResponse_ALL")
.split(",")
.collect { Integer.valueOf(it) }
.sum()
.toString()
vars.put("countFromResponse_SUM", overall)
转换回字符串非常重要,因为JMeter中的所有正常变量都将被视为字符串。谢谢!太好了,谢谢!这太完美了。