# Quickstart: run your first Testmode test

URL: https://testmode.ai/docs/quickstart/

> Create a project, add your app's URL, write a test case in plain English and run it, following along on a public practice shop.

This quickstart takes you from a new account to your first test result. You create a project, write one test case in plain English, run it in a cloud browser and read what happened.

The example tests the Toolshop, a public practice shop at `https://practicesoftwaretesting.com`, so you can follow along without your own app. To test your own app instead, use its URL wherever the Toolshop's appears.

## Before you start

- **A browser.** There is nothing to install.
- **A site to test.** Use the Toolshop, or any web app reachable from the public internet. Testmode's browsers run in the cloud, so they can't open `localhost` or sites behind a VPN.
- **Credits.** Runs use your organization's credits. The **Run tests** dialog shows the cost and your balance before anything starts.

## Create your account

1. Open the Testmode app and select the **Sign Up** tab.

2. Enter your **Name**, **Email** and **Password**.

3. Click **Create Account**.

Testmode signs you in and takes you to setup.

**Note**

If Testmode asks you to confirm your email address, open the link in that email, then sign in.

## Create your organization and first project

An organization holds your team, your projects and your credits. A project holds the tests for one app.

1. Under **Create your organization**, enter an **Organization Name**, such as `Pellbrook Digital`, and click **Continue**. You become the organization's Owner.

2. Under **Create your first project**, replace `My App` in **Project Name** with a name for your project, such as `Toolshop Storefront`.

3. In **Application URL (optional)**, enter `https://practicesoftwaretesting.com`.

4. Click **Continue**.

Testmode creates the project and opens **Overview**.

[Screenshot: Onboarding card at the Project step, titled Create your first project, with Project Name Toolshop Storefront and Application URL practicesoftwaretesting.com filled in. Caption: The Application URL you enter becomes your project's first environment.]

## Check the environment

An environment is a site your tests run against. The Application URL you entered became an environment named `Default`.

1. Open **Settings** > **Environments**.

2. Find `Default` in the list.

`Default` points at the Toolshop, and it is not marked as production.

[Screenshot: Environments settings with one environment named Default pointing at practicesoftwaretesting.com and no production badge. Caption: The Application URL from onboarding appears as an environment named Default.]

**Tip**

If you left **Application URL (optional)** empty, add an environment on this tab first. You can't start a run until you choose an environment.

## Write your first test case

A test case is a list of steps and an **Expected Outcome**, both in plain English. You describe what a person would do and see. You don't write code or selectors.

1. In the sidebar, click **Test Cases**, then click **New Test Case**. The **Create Test Case** dialog opens.

2. In the name field at the top, type `Search finds hammers`.

3. Click **Add Step** and type the first step. Click **Add Step** again for the second:

```text
1. Type "hammer" into the "Search" field and click "Search".
2. Wait until the heading "Searched for: hammer" appears.
```

4. In **Expected Outcome**, describe what success looks like:

```text
Every product card shown has "hammer" in its name, and "Thor Hammer" is one of them.
```

5. Leave **Start Path** empty, so the test starts at the environment's Base URL, the shop's home page. Leave **Maximum duration (minutes)** empty too, so the test uses the project's default time limit.

6. Click **Create**.

**Create** stays disabled until the test has a name, at least one step and an **Expected Outcome**.

[Screenshot: Create Test Case dialog for Search finds hammers with two plain-English steps that search the Toolshop for hammer and an Expected Outcome about the results. Caption: A test case needs a name, at least one step and an Expected Outcome, written in plain English.]

## Run it

1. Click **Run test** in the header. The **Run tests** dialog opens.

2. Under **Environment**, choose `Default`.

3. Under **What to run**, choose **Single test**, then pick `Search finds hammers`.

4. Check the footer. For this test it reads "Uses 2 credits", followed by the credits your organization has available.

5. Click **Run**.

A run uses one credit for each step in a test case, with a minimum of one credit per test case. This test has two steps, so it uses two credits.

[Screenshot: Run tests dialog with the Default environment, Single test selected with Search finds hammers, and the credits the run uses and the balance in the footer. Caption: Check the environment, the test and the credits the run will use before you click Run.]

**Note**

Starting runs needs the Editor role or above. As the organization's Owner, you have it.

## Read the result

Testmode opens the run page. While the test waits for a browser and runs, the page shows `In progress`. When the test finishes, it shows `Passed` or `Failed`.

- **While it waits**, a line on the page says why, for example "Next in line for a browser", or how many tests are ahead of yours.
- **While it runs**, the **Live Browser View** shows the browser as the agent works.
- **When it passes**, you see the verdict and a summary the agent wrote about what it found.
- **Test Steps** lists each browser action the agent took, with a screenshot and the reasoning behind it. The first action starts expanded; click any row to expand it. In the screenshot, the last action is open.

[Screenshot: Passed single-test run for Search finds hammers with the agent's written summary and the last step expanded to a screenshot of the hammer search results. Caption: The result shows the verdict, the summary the agent wrote and each action it took, with a screenshot.]

If your test shows `Passed`, you're done: Testmode searched the shop and confirmed that the results match your **Expected Outcome**.

## What if my test failed?

A failed test shows a **Failure reason** that explains what didn't match. Read it next to the screenshots in **Test Steps**, then change the test and run it again.

Common causes on a first test:

- **A label doesn't match the site.** Quote buttons, fields and headings exactly as the page shows them.
- **The Expected Outcome is stricter than you meant.** Describe only what must be true, in words the page actually shows.
- **The site blocked the cloud browser.** If the screenshots show an error or a challenge page instead of the shop, the site is refusing automated traffic. Test an environment that allows it.
- **The reason starts with "Stopped early:" or "Timed out:".** The agent stopped making progress, or the test ran out of time. Check that your steps match the labels and flow the page shows now.
- **The reason starts with "Login failed".** That only happens when a test uses a login credential. The quickstart test doesn't use one.

The rows in **Test Steps** are the agent's own actions, not a line-by-line copy of your steps. Testmode judges the whole test against the **Expected Outcome**, so read the summary first.

## Next steps

- [Write a test case](https://testmode.ai/docs/write-a-test-case/): Every field in the test case dialog, including Start Path and login.
- [How Testmode runs a test](https://testmode.ai/docs/how-testmode-runs-a-test/): What happens between clicking Run and getting a verdict.
- [Read run results](https://testmode.ai/docs/read-run-results/): Summaries, screenshots, logs and the Live Browser View.
- [Environments](https://testmode.ai/docs/environments/): Add staging and production and set a default.
- [What you can do with Testmode](https://testmode.ai/docs/capabilities/): Automatic login, schedules, email reports, Explore and the Assistant.
