Class JMESPathAssertion

java.lang.Object
org.apache.jmeter.testelement.AbstractTestElement
org.apache.jmeter.assertions.jmespath.JMESPathAssertion
All Implemented Interfaces:
Serializable, Cloneable, Assertion, Searchable, org.apache.jmeter.testelement.TestElement, TestStateListener

public class JMESPathAssertion extends AbstractTestElement implements Serializable, Assertion, TestStateListener
This is main class for JSON JMESPath Assertion which verifies assertion on previous sample result using JMESPath expression JMESPath-java sources and doc.
Since:
5.2
See Also:
  • Constructor Details

    • JMESPathAssertion

      public JMESPathAssertion()
  • Method Details

    • getResult

      public AssertionResult getResult(SampleResult samplerResult)
      Description copied from interface: Assertion
      Returns the AssertionResult object encapsulating information about the success or failure of the assertion.
      Specified by:
      getResult in interface Assertion
      Parameters:
      samplerResult - the SampleResult containing information about the Sample (duration, success, etc)
      Returns:
      the AssertionResult containing the information about whether the assertion passed or failed.
    • objectToString

      public static String objectToString(com.fasterxml.jackson.databind.ObjectMapper mapper, com.fasterxml.jackson.databind.JsonNode element) throws com.fasterxml.jackson.core.JsonProcessingException
      Throws:
      com.fasterxml.jackson.core.JsonProcessingException
    • testStarted

      public void testStarted()
      Description copied from interface: TestStateListener

      Called just before the start of the test from the main engine thread. This is before the test elements are cloned. Note that not all the test variables will have been set up at this point.

      N.B. testStarted() and testEnded() are called from different threads.

      Specified by:
      testStarted in interface TestStateListener
      See Also:
    • testStarted

      public void testStarted(String host)
      Description copied from interface: TestStateListener

      Called just before the start of the test from the main engine thread. This is before the test elements are cloned. Note that not all the test variables will have been set up at this point.

      N.B. testStarted() and testEnded() are called from different threads.

      Specified by:
      testStarted in interface TestStateListener
      Parameters:
      host - name of host
      See Also:
    • testEnded

      public void testEnded()
      Description copied from interface: TestStateListener

      Called once for all threads after the end of a test. This will use the same element instances as at the start of the test.

      N.B. testStarted() and testEnded() are called from different threads.

      Specified by:
      testEnded in interface TestStateListener
      See Also:
    • testEnded

      public void testEnded(String host)
      Description copied from interface: TestStateListener

      Called once for all threads after the end of a test. This will use the same element instances as at the start of the test.

      N.B. testStarted() and testEnded() are called from different threads.

      Specified by:
      testEnded in interface TestStateListener
      Parameters:
      host - name of host
      See Also:
    • getJmesPath

      public String getJmesPath()
    • setJmesPath

      public void setJmesPath(String jmesPath)
    • getExpectedValue

      public String getExpectedValue()
    • setExpectedValue

      public void setExpectedValue(String expectedValue)
    • setJsonValidationBool

      public void setJsonValidationBool(boolean jsonValidation)
    • setExpectNull

      public void setExpectNull(boolean val)
    • isExpectNull

      public boolean isExpectNull()
    • isJsonValidationBool

      public boolean isJsonValidationBool()
    • setInvert

      public void setInvert(boolean invert)
    • isInvert

      public boolean isInvert()
    • setIsRegex

      public void setIsRegex(boolean flag)
    • isUseRegex

      public boolean isUseRegex()