> ## Documentation Index
> Fetch the complete documentation index at: https://www.testmuai.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Checkpoints

> Checkpoints are verification points KaneAI evaluates during test execution: assert conditions, branch on results, or extract values for later use.

***

<Note>
  **Using Claude Code, Cursor, or another coding agent?** Paste this into your prompt to run cross-browser and real-device tests, debug sessions, and wire up CI on the TestMu AI cloud:

  ```
  Read https://www.testmuai.com/support/docs/SKILL.md to set up TestMu AI (formerly LambdaTest) cloud testing.
  ```
</Note>

Checkpoints are verification points that KaneAI evaluates during test execution. They let you assert conditions, branch on results, or extract values for later use.

## Checkpoint Types

| Type           | What it does                                      |
| -------------- | ------------------------------------------------- |
| **Assertion**  | Verify a condition is true, fails the test if not |
| **If/Else**    | Branch execution based on a condition             |
| **Extraction** | Store a value for use in later steps              |

All three types work with every analyze method below.

## Analyze Methods

Each checkpoint uses an analyze method to determine *where* to look for the data:

| Method                                              | Data Source                         | When to Use                                                                  |
| --------------------------------------------------- | ----------------------------------- | ---------------------------------------------------------------------------- |
| [Visual](/docs/docs/kane-cli-checkpoint-visual/)         | Screenshot (what you see on screen) | Text, labels, prices, counts, colors, visibility checks                      |
| [Textual (DOM)](/docs/docs/kane-cli-checkpoint-textual/) | Page DOM elements                   | Element states (disabled, checked), CSS properties, HTML attributes          |
| [URL](/docs/docs/kane-cli-checkpoint-url/)               | Browser URL bar                     | URL path, query params, redirects                                            |
| [Title](/docs/docs/kane-cli-checkpoint-title/)           | Page title                          | Document title verification                                                  |
| [DevTools](/docs/docs/kane-cli-checkpoint-devtools/)     | Browser internals                   | Network traffic, console logs, performance, cookies, localStorage, clipboard |

## How to Use

Write your assertions naturally in the objective. KaneAI automatically picks the right analyze method:

```
Assert: the price is $29.99                    → Visual
Assert: the submit button is disabled          → Textual (DOM)
Assert: URL contains /checkout                 → URL
Assert: page title contains "Dashboard"        → Title
Assert: no API calls returned 5xx              → DevTools (Network)
Assert: no console errors                      → DevTools (Console)
Assert: page LCP is under 2500ms               → DevTools (Performance)
Assert: session cookie exists                  → DevTools (Cookies)
Assert: auth_token exists in localStorage      → DevTools (localStorage)
Assert: the clipboard has the copied link      → DevTools (Clipboard)
```

Extractions work the same way:

```
Store the product price                        → Visual
Store the current URL                          → URL
Store all cookies                              → DevTools (Cookies)
Store the API response body                    → DevTools (Network)
```

## Operators

Assertions support these comparison operators:

| Operator       | Meaning                 | Example                    |
| -------------- | ----------------------- | -------------------------- |
| `equals`       | Exact match             | price equals "29.99"       |
| `contains`     | Substring match         | URL contains "/checkout"   |
| `not_contains` | Does not contain        | title not contains "Error" |
| `gt` / `gte`   | Greater than / or equal | items greater than 5       |
| `lt` / `lte`   | Less than / or equal    | LCP less than 2500         |
| `not_equals`   | Not equal               | status not equals "failed" |

## Learn More

* [Visual Assertions](/docs/docs/kane-cli-checkpoint-visual/): screenshot-based text and visibility checks
* [Textual (DOM) Assertions](/docs/docs/kane-cli-checkpoint-textual/): element states and attributes
* [URL Assertions](/docs/docs/kane-cli-checkpoint-url/): URL-based checks
* [Title Assertions](/docs/docs/kane-cli-checkpoint-title/): page title checks
* [DevTools Assertions](/docs/docs/kane-cli-checkpoint-devtools/): network, console, performance, cookies, localStorage, clipboard
