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`