# Extraction & Assertion step

The extraction & assertion step allows extracting, assigning parameters and add validations without spinning an entire request. Among it's usages are assigning or allocating values at the beginning of a flow of after calling a generic shared flow and we need to extract/re-assign/validate additional flow specific data.

<figure><img src="/files/BzQ0de0EjS8su898u76T" alt=""><figcaption></figcaption></figure>

The Extract & Assert step consists of three main areas:

1. Extraction section - a place to assign and extract the parameters.\
   Note that the extractions will refer to the last response that was introduced, ie. the previous response.\\

   <figure><img src="/files/ohqrdAMaasgWSNWc8Jcq" alt=""><figcaption></figcaption></figure>

   Each extraction consists of three parts:

   1. Parameter name - the name that the parameter will be referenced when used, this filed can accept letters, numbers and undescores (\`\_\`).
   2. Assignment method/type - A selection of methods that can be used to acquire the value for the parameter. The available methods are: Assign, JSONPath, Clojure, xPath, RegExp, Header and WebSocket. For detailed explanation about each one of the methods please refer to the [Extractions documentation](/test-editor/set-parameters-extractions.md).
2. Assertions area - A place for data validations (Assertions)

   <figure><img src="/files/vcbrWLtlQsy8Gp1dqL7g" alt=""><figcaption></figcaption></figure>

   The assertions section consists of three areas:

   1. The parameter that carries the value for the validation.
   2. The comparison method (the operator), also referred as the value, the available operators are\
      Exists, Doesn't exists, Equals, Doesn't equals, Contains, Doesn't contains, Matches, Greater than, Less than, JSON Schema, JSON Contains, XML Contains.\
      For detailed explanation about each one of the comparison methods please refer to the [Assertions documentation](/test-editor/assertions.md).
   3. The expression - when applicable, this value will carry the compared value or expression for the validation.
3. Flow control area - Allows skipping to another step, stopping the flow and add wait time after step execution.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.loadmill.com/test-editor/steps/extraction-and-assertion-step.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
