Java 什么是getAssertionResults();返回以及如何在jmeter中的BeanShell后处理器中检查它

Java 什么是getAssertionResults();返回以及如何在jmeter中的BeanShell后处理器中检查它,java,methods,jmeter,assertion,beanshell,Java,Methods,Jmeter,Assertion,Beanshell,我是JMeter的初学者,所以,如果我不能正确解释或者这是一个愚蠢的问题,请原谅 我通过HTTP请求采样器的响应断言检查某些响应文本。ie文本响应包含: class=“panel panel panel mini pane fire ev header top”| id=“block-panels\u mini-fire\u ev\u header\u top”等 并且希望在BeanShell后处理器中使用prev.getAssertionResults()作为条件,即如果响应文本包含上述文本,

我是JMeter的初学者,所以,如果我不能正确解释或者这是一个愚蠢的问题,请原谅

我通过HTTP请求采样器的响应断言检查某些响应文本。ie文本响应包含:

class=“panel panel panel mini pane fire ev header top”| id=“block-panels\u mini-fire\u ev\u header\u top”

并且希望在BeanShell后处理器中使用
prev.getAssertionResults()
作为条件,即如果响应文本包含上述文本,则执行某些步骤会失败。但不确定
getAssertionResults()
返回什么


请问我该怎么做

您引用的方法返回一个与父采样器关联的实例数组,有关所有可用的方法和字段,请参阅JavaDoc。您可以按如下方式使用它:

import org.apache.jmeter.assertions.AssertionResult;

AssertionResult[] assertionResults = prev.getAssertionResults();
for (AssertionResult assertionResult : assertionResults) {
    if (assertionResult.isFailure()) {
        // do what you need if assertion is not successful
    } else {
        //do what you need if assertion is successful
    }
}
有关使用JMeter断言的更多信息,请参阅本文



注意:您可能会发现,
${JMeterThread.last_sample_ok}
的条件更易于使用import org.apache.jmeter.assertions.AssertionResult,您需要使用从第三方软件包加载类。请参阅文章了解更多详细信息。我没有足够的心灵感应能力去猜测代码中的语法问题在哪里,而没有看到它。考虑到您模棱两可的编程技能,“如果控制器”方法将是更好的解决方案i import org.apache.jmeter.assertionassertionResult,现在我收到了这个错误消息:jmeter.util.BeanShellInterpreter:调用bsh方法时出错:文件中的eval:inline求值:``import org.apache.jmeter.assertions.AssertionResult//字符串代码=prev.getR…“”在第15行第5列遇到“}”。