Jmeter JSR223采样器和JSR223预处理器之间的区别
我是Jmeter的新手,正在积极学习Jmeter JSR223采样器和JSR223预处理器之间的区别,jmeter,Jmeter,我是Jmeter的新手,正在积极学习 我想知道JSR223采样器和JSR223预处理器有什么不同,采样器可以和预处理器一样使用吗 一般的区别是预处理器不会被执行,除非它的作用域中有一个采样器(每个采样器) 预处理器元素用于改变采样器在其范围内的设置。它总是在实际的采样器请求之前执行 具体区别在于没有可用的SampleResult,因此,例如,您无法执行以下示例: SampleResult.setStopTest(true); 根据脚本的返回值设置SampleResultResponseData
我想知道JSR223采样器和JSR223预处理器有什么不同,采样器可以和预处理器一样使用吗 一般的区别是预处理器不会被执行,除非它的作用域中有一个采样器(每个采样器) 预处理器元素用于改变采样器在其范围内的设置。它总是在实际的采样器请求之前执行 具体区别在于没有可用的
SampleResult
,因此,例如,您无法执行以下示例:
SampleResult.setStopTest(true);
根据脚本的返回值设置SampleResult
ResponseData。如果脚本返回null,它可以使用方法SampleResult.setResponseData(数据)
直接设置响应,其中数据是字符串或字节数组。数据类型默认为“text”,但可以使用方法SampleResult.setDataType(SampleResult.binary)
将其设置为二进制
SampleResult变量允许脚本完全访问SampleResult中的所有字段和方法。例如,脚本可以访问方法setStopThread(boolean)
和setStopTest(boolean)
JSR223采样器是一个,因此它将生成一个将出现在测试结果中的(除非调用方法)
JSR223预处理器本身无法执行,您需要根据需要将其连接到一个(或多个)采样器,以便在一个(或多个)采样器之前执行。预处理器执行时间不会反映在测试结果中(除非您使用配置为包含它的)
两者都可以运行任意代码(建议坚持使用),因此使用哪种代码主要取决于您的用例,如果您需要进行加载并测量时间-采样器的运行时间,如果您需要设置一些数据-预处理器的运行时间,等等。谢谢您的回答!!现在我很清楚什么时候用哪一种。