Test Execution Reference
Ways to start a run, run configuration fields, statuses, concurrency, and retry.
Complete reference for executing tests in SmoothDeploy. New to running tests? Start with Running Your First Test.
Ways to Start a Run
| Method | Where |
|---|---|
| Test editor — remote | Run button in the test toolbar; opens the Run Test Remotely dialog |
| Test editor — local | Run Locally button in the test toolbar; desktop app only; opens the Run Test Locally dialog |
| Tests table — bulk | Select one or more tests → play icon button (tooltip: "Run selected tests") in the toolbar; opens Run N Tests Remotely; draft tests are excluded |
| Cron schedule | Runs fire on the schedule's cron expression. See Schedules |
| HTTP API | A request authenticated with an API key. See API Reference |
Local runs only work in the desktop app. See Local Results.
Run Configuration
Config Sources
When you open the run dialog the form is pre-filled from the test's saved config. If the test has no saved config and the organization has a default config preset, the preset is applied instead. You can select a different preset from the Config Preset dropdown, which replaces the current form values. Whatever values are in the form when you click Run Test become the per-run config. See Config Presets.
To persist the current dialog values back to the test, click Save Config in the dialog footer.
Config Fields
| Field | Default | Notes |
|---|---|---|
| Base URL | — | Prepended to relative navigation paths |
| Browser | Chromium | Chromium, Firefox, or WebKit (Safari) |
| Video | Off | Off, On, Retain on Failure, or On First Retry |
| Trace | Retain on Failure | Off, On, Retain on Failure, or On First Retry |
| Screenshot | Only on Failure | Off, On, or Only on Failure |
| Action Timeout (ms) | 0 | Max time per action. 0 = no limit. Max 3,600,000 |
| Navigation Timeout (ms) | 0 | Max time per navigation. 0 = no limit. Max 3,600,000 |
| Slow Motion (ms) | — | Delay added between each action. Max 5,000 |
| Result Screenshots | — | Capture a screenshot after each step (remote only) |
| Pause on Failure | — | Pause the browser on step failure instead of closing it (local only) |
| Track Failed Requests | off | Record HTTP error responses during the run |
| Min Status | 400 | Minimum status code to record when tracking is on |
| Specific Codes | — | Exact status codes to record; overrides Min Status when set |
| Ignore URLs | — | URL substrings to exclude from tracking |
| Retries | 0 | Times to retry a failed test |
| Test Timeout (ms) | 30000 | Max duration for the entire test. Max 7,200,000 (2 h) |
| Repeat Each | 1 | Times to repeat each test in a run |
| Workers | 1 | Playwright worker count for parallel test execution within the run |
| Viewport Width | 1920 | Browser viewport width |
| Viewport Height | 1080 | Browser viewport height |
For the programmatic config format used by the API, see API Reference.
Run Statuses
Run-Level
A remote run moves through these statuses in order:
| Status | Meaning |
|---|---|
| Pending | Created; waiting for a free parallel |
| Queued | Assigned to a runner; not yet started |
| Running | Actively executing |
| Completed | All tests passed |
| Failed | One or more tests failed or timed out |
| Cancelled | Stopped manually |
Per-Test Result
| Status | Meaning |
|---|---|
| Passed | All steps succeeded |
| Failed | A step assertion failed |
| Timed Out | Test exceeded its timeout |
| Skipped | Test was not executed |
| Interrupted | Run was cancelled while the test was executing |
Per-Step
| Status | Meaning |
|---|---|
| Pending | Not yet reached |
| Running | Currently executing |
| Passed | Step completed without error |
| Failed | Step threw an error |
| Skipped | Step's condition was not met |
See View Results for how to read these in the UI.
Concurrency and Queueing
Each plan has a fixed number of parallels. The current usage is shown in the Concurrency Usage widget in the top bar (parallels in use / plan limit).
When all parallels are in use, the outcome depends on the trigger:
- Runs started from the console or the HTTP API are rejected and no run is created.
- API-triggered runs are created with status Pending and start once a parallel frees.
- Scheduled runs are skipped for that occurrence.
Retrying Failed Tests
The Retries field controls how many times Playwright retries a failed test before marking it failed. Set to 0 (the default) to disable retries.
Cancelling a Run
Open the run detail page while the run is Pending, Queued, or Running. A Cancel Run button is available there. See View Results.