Jmeter 4|HTTP请求采样器发送的JAVA实现字节数未捕获



我们正在为其中一个请求使用JAVA实现。在请求中,我们正在上传一个文件。选择HTTPCLIENT4实现时,请求不起作用。该请求与HTTPCLIENT3.1实现的先前Jmeter版本配合良好。我们需要捕获在结果中发送的字节。如何在HTTP请求采样器中捕获通过JAVA实现发送的字节

Sent bytes基本上是URL+头文件+正文的组合,因此您可以使用JSR223 PostProcessor和以下代码自行计算:

def url = sampler.getUrl().toString().length()
def headers = prev.getHeadersSize()
def body = 0;
sampler.getHTTPFiles().each {file ->
body += new File(file.getPath()).length()
}
prev.setSentBytes(url + headers + body)

其中:

  • sampler是HTTPSamplerProxy的一个实例,您可以在其中获取随请求发送的所有文件
  • prev是HTTPSampleResult的一个实例,您可以在其中获取URL和Headers,还可以覆盖Sent Bytes字段

请参阅JMeter的Groovy模板备忘单,了解您还可以使用Groovy做什么以及如何做。

最新更新