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

# Browser Tests

> Run automated workflows on your app to make sure key flows stay functional as you build and make changes.

Browser tests run automated workflows on your app. Use them to make sure key flows in your app stay functional as you build and make changes.

### What are examples of tests?

Test the workflows your users rely on most. For example:

* Create an order and reach the confirmation page.
* Add an item to the cart and check out.
* Create and save a record, such as a new project, task, or contact.
* Search, filter, and confirm the right results show.

### How do I create a test?

Open the **Tests** tab in the sidebar and create a new test. A test has three parts:

* **Instructions:** the flow to follow, written in plain language.
* **Success criteria:** what must be true for the test to pass. Add one or more.
* **Cleanup** (optional): steps to undo anything the test created, such as deleting a record it added.

Write instructions like you are guiding a new teammate. Be specific about what to do and what to look for.

```text Example instructions wrap theme={}
Go to the products page. Add the first product to the cart, then go to checkout and place the order.
```

```text Example success criteria wrap theme={}
An order confirmation page appears with an order number. The new order shows in the orders list.
```

### How do I run a test?

You can run a test three ways:

* **Manually:** open a test and click **Run**. You can watch the browser live while it runs.
* **On publish:** turn on **Run on publish** so the test runs every time you publish your app.
* **On a trigger:** schedule a test to run daily or weekly, or ask the Agent in chat to run it.

### Are tests logged into my app?

You choose who the test runs as:

* **Hercules bot** (default): a dedicated test account, isolated from your real users and their data, so tests never touch live records.
* **Creator:** signed in as you, the app's creator, with your data and permissions.
* **None:** logged out, like a visitor who has not signed in.

### How do I view previous tests?

Open a test to see its run history, then open any run to view the test run page. Each run shows:

* A pass, fail, or error status, plus a short summary.
* Each success criterion marked met or unmet, with the evidence Hercules observed.
* Screenshots and a recording of the run.
* A step by step transcript of what the browser did.
* The credits the run used.

### Additional FAQ

<AccordionGroup>
  <Accordion title="How much are tests?">
    Tests use [AI Credits](/platform/billing/ai-credits) as Hercules works through the steps.
    Longer, more complex flows use more. The exact amount each run used is shown on the test run
    page.
  </Accordion>

  <Accordion title="Can I test login or onboarding?">
    Not currently. Tests run as the account you choose, so they cannot test the login or onboarding
    flow itself.
  </Accordion>

  <Accordion title="Which version of my app gets tested?">
    You choose the target when you create the test. Run against your dev preview to catch issues
    before publishing, or against your published app to check what your users see.
  </Accordion>

  <Accordion title="What's the difference between a failed and errored run?">
    A failed run means the test ran but a success criterion was not met. An errored run means
    something went wrong before the test could finish, for example the app could not load or you ran
    out of credits.
  </Accordion>

  <Accordion title="Can I cancel a run?">
    Yes. Cancel a run while it is pending or in progress.
  </Accordion>

  <Accordion title="Can I set the screen size?">
    Yes. Set a custom viewport (the browser window size) to test a specific desktop, tablet, or
    phone layout. Leave it blank to use the default size.
  </Accordion>
</AccordionGroup>
