我有几个JSR 223采样器,其中包含Thread组内的脚本 在调用HTTP请求之前进行一些工作。
问题是JSR 233采样器包含在最终摘要报告中 我的问题是如何从最终计算中排除那些JSR 223采样器?
更新
当我尝试设置预处理器JSR 223时
我在预处理器JSR 223之后将此错误视为if控制器
无法识别我在vars.put
中设置的变量。它只在我使用JSR 223采样器时识别它。
2017/08/24 16:07:37 ERROR - jmeter.control.IfController: If Controller: error while processing [${my_foo_var} >=0]
org.mozilla.javascript.EvaluatorException: missing ; before statement (<cmd>#1)
at org.mozilla.javascript.DefaultErrorReporter.runtimeError(DefaultErrorReporter.java:77)
at org.mozilla.javascript.DefaultErrorReporter.error(DefaultErrorReporter.java:64)
at org.mozilla.javascript.Parser.addError(Parser.java:188)
at org.mozilla.javascript.Parser.addError(Parser.java:166)
at org.mozilla.javascript.Parser.reportError(Parser.java:256)
at org.mozilla.javascript.Parser.reportError(Parser.java:243)
at org.mozilla.javascript.Parser.reportError(Parser.java:236)
at org.mozilla.javascript.Parser.autoInsertSemicolon(Parser.java:1100)
at org.mozilla.javascript.Parser.statementHelper(Parser.java:1077)
at org.mozilla.javascript.Parser.statement(Parser.java:934)
at org.mozilla.javascript.Parser.parse(Parser.java:573)
at org.mozilla.javascript.Parser.parse(Parser.java:511)
at org.mozilla.javascript.Context.compileImpl(Context.java:2488)
at org.mozilla.javascript.Context.compileString(Context.java:1476)
at org.mozilla.javascript.Context.compileString(Context.java:1465)
at org.mozilla.javascript.Context.evaluateString(Context.java:1216)
at org.apache.jmeter.control.IfController$RhinoJsEngine.evaluate(IfController.java:105)
at org.apache.jmeter.control.IfController.evaluateCondition(IfController.java:187)
at org.apache.jmeter.control.IfController.next(IfController.java:240)
at org.apache.jmeter.control.GenericController.nextIsAController(GenericController.java:222)
at org.apache.jmeter.control.GenericController.next(GenericController.java:176)
at org.apache.jmeter.control.LoopController.next(LoopController.java:123)
at org.apache.jmeter.threads.AbstractThreadGroup.next(AbstractThreadGroup.java:87)
at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:247)
at java.lang.Thread.run(Unknown Source)
答案 0 :(得分:3)
您可以使用“ prev.setIgnore();”告诉Jmeter监听器忽略先前的SampleResult。 在JSR223后处理器中。
您可以将其用于所有采样器。该解决方案适用于JMeter 4和5
答案 1 :(得分:1)
您可以使用Filter Results Tool从最终报告中删除不需要的样本,它具有--exclude-label-regex
参数,您可以在其中提供采样器名称模式。
您可以安装过滤结果工具(以及任何其他插件)并使用JMeter插件管理器使其保持最新
[
假设安装成功,您应该能够在JMeter安装的“bin”文件夹下找到FilterResults.bat
和FilterResults.sh
工具启动脚本。
答案 2 :(得分:0)
包含所有采样器,因此您可以将代码移至JSR 223 Post / Pre Processor,并将其放在层次结构中的不同现有采样器下。
这样,代码就不会在报告中计算出来。