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

# Local Development

> Validate development changes in TesterArmy cloud using a preview deployment or a tunnel URL.

TesterArmy executes tests in the cloud. To validate development changes, deploy
a preview or expose your dev server through a tunnel and use its reachable URL.
A cloud browser cannot reach your machine's `localhost` address directly.

Local CLI execution and its hosted inference proxy have been removed. Update
older CLI installations and use cloud runs, which follow your team's existing
plan limits and usage.

## Save a development environment

Start your app and obtain a preview or tunnel URL, then save it on the project:

```bash theme={"theme":"vesper"}
ta projects environments-create <projectId> --name Development --url https://dev.example.com --json
ta projects environments <projectId> --json
```

Use the returned environment name or slug for subsequent runs. If a temporary
tunnel URL changes, create an environment with the new URL.

## Run saved tests

```bash theme={"theme":"vesper"}
# Run a single test against the saved development environment
ta tests run <testId> --env development --wait --json

# Run the group against the same environment
ta tests run --group <groupId> --project <projectId> --env development --wait --json

# Override the target URL for one group run
ta tests run --group <groupId> --project <projectId> --url https://preview.example.com --wait --json
```

Single-test runs select their target through `--env` or
`--project-environment-id`. Use `--wait-timeout <ms>` to adjust how long the CLI
waits for results.

## Inspect results

Runs appear in the dashboard with their recordings and step results. From the
terminal, inspect a run using the ID returned by the run command:

```bash theme={"theme":"vesper"}
ta runs get <runId> --json
ta runs messages <runId> --json
ta runs telemetry <runId> --json
```

Console and network telemetry (app logs for mobile runs) becomes available
after the run finishes.
Save the JSON response with shell redirection when you need a local artifact:

```bash theme={"theme":"vesper"}
ta tests run <testId> --env development --wait --json > result.json
```

## CI usage

Run a group against the preview URL produced by your deployment step:

```yaml theme={"theme":"vesper"}
- name: Run QA tests
  run: npx testerarmy ci --group <groupId> --project <projectId> --target-url "$PREVIEW_URL" --json
  env:
    TESTERARMY_API_KEY: ${{ secrets.TESTERARMY_API_KEY }}
    PREVIEW_URL: ${{ steps.deploy.outputs.url }}
```

`ta ci` waits for results and exits unsuccessfully for failed, blocked, cancelled,
or timed-out runs. See [Direct CLI usage](/mobile/github-actions#direct-cli-usage) and
[Custom infrastructure](/integrations/custom-infrastructure) for more CI options.


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