在GUI模式下运行JMeter时,有时请求卡住或花费很长(几分钟或更长时间)才能获得响应
是否可以在收到响应之前查看请求?
显然,由于作用域规则,监听器是在Sampler完成后执行的,但是还有另一种方法吗?
答案 0 :(得分:1)
一个更复杂的选项是使用JSR223 PreProcessor和Groovy将请求详细信息打印到 jmeter.log 文件,这将查询sampler
实例这是HTTPSamplerProxy类的缩写,例如:
log.info('URL: ' + (sampler.getUrl() as String) + sampler.getQueryString())
log.info('Parameters: ')
sampler.getArguments().each {arg ->
log.info(arg.getObjectValue() as String)
}
if (sampler.getCookieManager() != null) {
log.info('Cookies: ')
sampler.getCookieManager().getCookies().each { cookie ->
log.info(cookie.getObjectValue() as String)
}
}
if (sampler.getHeaderManager() != null) {
log.info('Headers:')
sampler.getHeaderManager().getHeaders().each {header ->
log.info(header.getObjectValue() as String)
}
}
//etc
演示:
答案 1 :(得分:0)
按照Apache JMeter的主要书籍,填写超时可以防止出现此类问题:
“填充HTTP请求的超时(毫秒)”选项使您无需等待 无限期地进行SUT响应。
这将带来以下好处:
•允许JMeter在测试结束时停止,而不必无限期地等待 挂起的请求。默认情况下,HTTP请求中的超时是无限的