> For the complete documentation index, see [llms.txt](https://docs.does.qa/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.does.qa/test-steps/vision/ai-vision.md).

# AI Vision

AI Vision checks the page or an Element against a written expectation in plain language. Use it when you can describe what should be true on screen more clearly than you can pin a pixel baseline.

Unlike most Test Steps, AI Vision uses AI to judge the expectation, so it can affect pass or fail when you include it in a Flow. For how DoesQA keeps the rest of execution deterministic, and how optional AI is controlled, see [How does DoesQA avoid AI hallucinations or unreliable results?](/platform/doesqa-ai.md#how-does-doesqa-avoid-ai-hallucinations-or-unreliable-results).

![AI vision Test Step](https://static.does.qa/assets/nodes/vision_ai.png)

## When to use it

* Verify branding, charts, or states where text Checks are not enough.
* Write an **Expectation** such as "The success banner is green" or "The chart shows three bars".
* Set **Mode** to **Page** for the full view, or **Element** to narrow the check to one control.
* Pull dynamic text from [Values](/values/value-store.md) when the expectation includes data from earlier steps.

For a Flow Builder walkthrough, see [Add visual checks](/better-coverage/add-visual-checks.md).

## Configure

### Basics

| Field           | What to set                                                            |
| --------------- | ---------------------------------------------------------------------- |
| **Mode**        | `Page` (default) or `Element`                                          |
| **Element**     | The [Element](/elements/creating-elements.md) when Mode is **Element** |
| **Expectation** | Plain-language description and/or [Values](/values/value-store.md)     |

### Advanced

| Field              | What to set                                          |
| ------------------ | ---------------------------------------------------- |
| **Status on fail** | [Failed Status](/test-step-options/failed-status.md) |

{% hint style="info" %}
**Pro tip:** Prefer Mode **Element** when the expectation is about one component. A tighter target keeps the check clearer.
{% endhint %}

## Related

* [Element Snapshot](/test-steps/vision/element-snapshot.md)
* [Element Position](/test-steps/vision/element-position.md)
* [Vision](/test-steps/vision.md)
* [DoesQA AI](/platform/doesqa-ai.md)
* [Add visual checks](/better-coverage/add-visual-checks.md)
* [Check Text](/test-steps/check/check-text.md)

**Tags:** `vision`, `ai`, `visual`, `page`, `element`, `check`, `expectation`
