如何在JMeter中测量多个http采样器的响应数据的大小。我需要找到所有响应的总体大小,而不是针对单个响应。我试图通过Beanshell代码获取它,但它显示了上一次执行的示例的大小:-
import java.util.io.*;
import java.lang.io.*;
int totalsize;
test = prev.getResponseDataAsString().length();
log.info("size is = "+test);
totalsize = totalsize + test;
log.info("totalsize is = "+totalsize);
谢谢。
答案 0 :(得分:0)
在props
上使用JSR223代码,并在开始时将JMeter属性totalsize设置为0
props.put("totalsize", Integer.parseInt(prop.get("totalsize")) + test);
答案 1 :(得分:0)
以下解决方案也适用于beanshell后处理器:-
import java.util.io.*;
import java.lang.io.*;
test = prev.getResponseDataAsString().length();
log.info("size is = "+test);
text = ctx.getCurrentSampler().getName();
log.info("Sampler name is " +text);
if(text.equalsIgnoreCase("Test Sampler")){
props.put("totalsize",Integer.parseInt("0"));
}else{
props.put("totalsize", (props.get("totalsize")!=null?props.get("totalsize"):0) + test);
}
log.info("totalsize is = "+props.get("totalsize"));
“测试”捕获每个样本请求的大小,并将其不断添加到“总计”中。执行结束时,我将totalsize初始化回0。