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

# Test the HelpAlive agent with question batches and test links

> Run test questions against the HelpAlive agent and compare runs, or try the whole agent, assists included, on your own app with a test link.

**Test** is the page in the HelpAlive dashboard where you try the agent before your users do. It has two views. **On your app**, the one it opens on, tries the whole agent in your real app; see [Test it on your app](#test-it-on-your-app). **Question batches** runs a batch of questions through the agent so you can read its answers. Use it after you change sources, tone, length or custom responses on **Train**, before you press **Publish**.

## Testing at a glance

* **Question batches** test chat answers: up to 50 questions a run, read side by side with **Compare**.
* **On your app** tests the whole agent, assists included, through a test link that works in one browser for 14 days.
* Tests never reach your users and never count against your plan. Your workspace gets 300 test chats and 50 test assists a month.
* Changes to the agent's training and settings don't reach your users until you press **Publish**. An assist on your app is real, though: it changes real records.

## How a question batch works

A question batch answers the way the chat in your app does. When you have unpublished changes to guidance, custom responses or sources, it answers from them and the page shows **Previewing draft**. Each question counts as one of your workspace's test chats for the month.

## Run a batch of test questions

<Steps>
  <Step title="Start a new test">
    Press **New test**. Give it a **Test name (optional)**.
  </Step>

  <Step title="Add questions">
    Type one question per line under **Questions (one per line)**. To test follow-ups, press **Add conversation** and add an **Opening question** with up to four **Follow-up** questions. A run holds up to 50 questions, follow-ups included.
  </Step>

  <Step title="Or load questions">
    **Load set** opens a set you saved before. **Upload CSV** reads a file with columns `turn_1`, `turn_2` and so on, one conversation per row.
  </Step>

  <Step title="Run it">
    Press **Run test**. Answers fill in the results table as they come. **Cancel** stops the run. Your workspace runs one batch at a time.
  </Step>
</Steps>

## Read a batch's results

Each run appears in the list on the left with its state: **Queued**, **Running**, **Done**, **Cancelled** or **Error**. Open a run to see each question and a plain-text preview of the agent's answer. Click a row for **Question detail**, including **Sources it answered from**.

The summary strip at the top says how the run is going, for example "Running: 8 of 12 answered". Once it ends, it says how it went, for example "Finished all 12 questions". **Not asked** means that a stopped run never reached that question. Once a run has ended, you can:

* save the questions as a reusable set, to run them again later;
* export the results as a CSV file;
* **Compare** it with another run.

## Compare two runs

Open a finished or canceled run and press **Compare** in its summary strip. The **Compare runs** view opens. Pick a second run under **Pick a run to compare…**.

HelpAlive pairs the answers by question and puts them side by side, each with its sources. Above the answers, a box lists what changed between the runs, such as docs added or "The answer guidance changed." **Sources changed** means that the two answers in a pair drew on different sources. Questions asked in only one run are listed at the end. **Export CSV** saves the comparison.

Answers can be worded differently even when nothing changed, because the agent writes each answer afresh. Run the same set before and after a change on **Train** to see what the change did.

## Test it on your app

**Test → On your app** lets you try the whole agent, assists included, in your real app, before you turn it on for anyone. Step 3 of **Settings → Setup & API Key** brings you here.

<Warning>
  A test assist works in your real app, as you. When it saves, sends or deletes, that happens for real, with your app's usual effects. Test with a test account and test data where you can.
</Warning>

You don't need to change **Controls** or pick yourself there. Sign in to your app in this browser and press **Test it on your app**. The agent shows there for you only, even while it is off for your users.

<Steps>
  <Step title="Check your app">
    Our script, `identify()` and your published docs come first. Enter your app's address and press **Check this address**. Three checks must pass: **Our script on app.yourcompany.com**, **Your app says who is signed in** and **Your docs, published**. If your docs show **Not published**, use **Go to Train** to publish them, then check again.
  </Step>

  <Step title="Make a test link">
    Sign in to your app as the person you'll test with, then press **Test it on your app**. Your app opens in a new tab with the link. The agent shows in that browser only, with a **Test** badge, even while it is off for everyone else.
  </Step>
</Steps>

A link works in the first browser that opens it, for 14 days or until you end it. To test in another browser, make a new link.

**Revoke** on the dashboard, or **End test** on the widget's Test strip in your app, ends a link. A test link never changes who gets the agent on [Controls](/dashboard/controls).

The 50 test assists and 300 test chats a month are shared by test links and question batches. The top of **On your app** shows what is left as **Test assists** and **Test chats**. Every assist and chat from a test link appears there, step by step. The step on **Setup** turns green once a test has run an assist or a chat.

## Check it works

Run one question your docs answer. The row turns **Done** and shows an answer drawn from your sources.

## Troubleshooting

* **"Run test" is disabled.** The run is over the 50-question limit, or has more questions than your workspace's test chats left this month. Remove some questions, or wait for the day they start again.
* **"A test run is already going."** Your workspace runs one batch at a time. Wait for it to finish or cancel it, then start yours.
* **The test link can't be made.** If **Your docs, published** shows **Not published**, publish your docs on **Train**, then check again. If **A plan or free trial** shows **No plan**, testing on your app starts once your plan or free trial does.
* **The widget says "This test has ended."** The link was revoked or its 14 days are over. Make a new link.
* **The test link does nothing in this browser.** Each link works in the first browser that opens it. Make a new link for this browser.

## Next

<CardGroup cols={3}>
  <Card title="Train" icon="graduation-cap" href="/dashboard/train">
    Change what the agent knows.
  </Card>

  <Card title="Publishing" icon="upload" href="/dashboard/publishing">
    Take your tested changes live.
  </Card>

  <Card title="Appearance" icon="palette" href="/dashboard/appearance">
    Style the widget your users see.
  </Card>
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.