JSONPathAssertion (Apache JMeter dist API)
Description: declaration: package: org.apache.jmeter.assertions, class: JSONPathAssertion

Package org.apache.jmeter.assertions

# Class JSONPathAssertion

java.lang.Object
org.apache.jmeter.testelement.AbstractTestElement
org.apache.jmeter.assertions.JSONPathAssertion

All Implemented Interfaces:
  `Serializable`, `Cloneable`, `Assertion`, `Searchable`, `org.apache.jmeter.testelement.TestElement`, `ThreadListener`

public class JSONPathAssertion extends AbstractTestElement implements Serializable, Assertion, ThreadListener
This is main class for JSONPath Assertion which verifies assertion on previous sample result using JSON path expression

Since:
  4.0
See Also:
  - Serialized Form

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from interface org.apache.jmeter.testelement.TestElement

  `org.apache.jmeter.testelement.TestElement.Companion`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `EXPECT_NULL`
  `static final String`
  `EXPECTEDVALUE`
  `static final String`
  `INVERT`
  `static final String`
  `ISREGEX`
  `static final String`
  `JSONPATH`
  `static final String`
  `JSONVALIDATION`

  ### Fields inherited from interface org.apache.jmeter.testelement.TestElement

  `COMMENTS, Companion, ENABLED, GUI_CLASS, NAME, TEST_CLASS`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `JSONPathAssertion()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `String`
  `getExpectedValue()`
  `String`
  `getJsonPath()`
  `AssertionResult`
  `getResult(SampleResult samplerResult)`
  Returns the AssertionResult object encapsulating information about the success or failure of the assertion.
  `boolean`
  `isExpectNull()`
  `boolean`
  `isInvert()`
  `boolean`
  `isJsonValidationBool()`
  `boolean`
  `isUseRegex()`
  `static String`
  `objectToString(Object subj)`
  `void`
  `setExpectedValue(String expectedValue)`
  `void`
  `setExpectNull(boolean val)`
  `void`
  `setInvert(boolean invert)`
  `void`
  `setIsRegex(boolean flag)`
  `void`
  `setJsonPath(String jsonPath)`
  `void`
  `setJsonValidationBool(boolean jsonValidation)`
  `void`
  `threadFinished()`
  Called for each thread after all samples have been processed.
  `void`
  `threadStarted()`
  Called for each thread before starting sampling.

  ### Methods inherited from class org.apache.jmeter.testelement.AbstractTestElement

  `addPropertiesValues, addProperty, addProperty, addTestElement, canRemove, clear, clearTemporary, clearTestElementChildren, clone, emptyTemporary, equals, getComment, getName, getProperty, getPropertyAsBoolean, getPropertyAsBoolean, getPropertyAsDouble, getPropertyAsFloat, getPropertyAsInt, getPropertyAsInt, getPropertyAsLong, getPropertyAsLong, getPropertyAsString, getPropertyAsString, getPropertyOrNull, getSearchableTokens, getThreadContext, getThreadName, hashCode, isEnabled, isRunningVersion, isTemporary, logProperties, mergeIn, propertyIterator, recoverRunningVersion, removeProperty, setComment, setEnabled, setName, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setRunningVersion, setTemporary, setThreadContext, setThreadName, traverse, traverseCollection, traverseMap, traverseProperty`

  ### Methods inherited from class java.lang.Object

  `finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

  ### Methods inherited from interface org.apache.jmeter.testelement.TestElement

  `get, get, get, get, get, get, get, get, get, getOrCreate, getOrCreate, getOrNull, getOrNull, getOrNull, getPropertyOrNull, getProps, getSchema, getString, removed, removeProperty, set, set, set, set, set, set, set, set, set`

- ## Field Details

  - ### JSONPATH

    public static final String JSONPATH
    See Also:
      - Constant Field Values

  - ### EXPECTEDVALUE

    public static final String EXPECTEDVALUE
    See Also:
      - Constant Field Values

  - ### JSONVALIDATION

    public static final String JSONVALIDATION
    See Also:
      - Constant Field Values

  - ### EXPECT_NULL

    public static final String EXPECT_NULL
    See Also:
      - Constant Field Values

  - ### INVERT

    public static final String INVERT
    See Also:
      - Constant Field Values

  - ### ISREGEX

    public static final String ISREGEX
    See Also:
      - Constant Field Values

- ## Constructor Details

  - ### JSONPathAssertion

    public JSONPathAssertion()

- ## Method Details

  - ### getJsonPath

    public String getJsonPath()

  - ### setJsonPath

    public void setJsonPath(String jsonPath)

  - ### 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()

  - ### 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(Object subj)

  - ### threadStarted

    public void threadStarted()
    Description copied from interface: `ThreadListener`
    Called for each thread before starting sampling. WARNING: this is called before any Config test elements are processed, so any properties they define will not have been merged in yet. See org.apache.jmeter.threads.JMeterThread#threadStarted()
    Specified by:
      `threadStarted` in interface `ThreadListener`

  - ### threadFinished

    public void threadFinished()
    Description copied from interface: `ThreadListener`
    Called for each thread after all samples have been processed. See org.apache.jmeter.threads.JMeterThread#threadFinished(org.apache.jmeter.engine.event.LoopIterationListener)
    Specified by:
      `threadFinished` in interface `ThreadListener`