好吧,伙计们,
我正在编写一个自定义java类来从Coherence网格中获取对象。它通过JMeter很好地工作,但响应数据并没有填补它在JMeter GUI中的位置。这就是我填写SamplerResult的方式:
result.setResponseData(getResponseData(cache.get(key)).getBytes());
getResponseData(Object);
返回一个简单的字符串,我将字节拉出。但是,响应数据仍然是空的。我可以将数据放在result.setSamplerData(String)
内,但它不会填充在ResponseData内部。它需要位于ResponseData内部,因为它是Regular Expression Extractor
可以使用的唯一方式。
这里有什么东西我不在吗?
非常感谢任何帮助。
谢谢!
Ninn
答案 0 :(得分:1)
实施采样器时,调用setResponseData(String, Encoding)
或setResponseData(byte[])
是正确的。
正则表达式提取器根据您在gui中设置的内容使用以下其中一项:
getResponseDataAsString(), getResponseMessage(), getResponseCode(), getResponseHeaders(), getUrlAsString()
。
如果你的byte[]
代表一个有效的字符串,那么这应该可行。
或者,只需在采样器中设置变量即可解决当前的用例:
getThreadContext().getVariables().put(name, value);