Steps Overview
How steps work in SmoothDeploy, how to add them, available action groups, and how to control execution with conditions
Steps are the building blocks of every test. Each step contains one action — a discrete operation such as clicking an element, filling a field, or asserting a value.
Adding Steps
Steps are added in the step sidebar inside the test editor. Opening the sidebar presents a form headed "Add New Step" with two tabs:
- Built-in Steps — pick any action type from the searchable combobox and configure it.
- Shared Steps — insert a previously created shared step from the searchable list.
After configuring the action fields, click Add Step to append the step to the test. To edit an existing step, select it in the sidebar; the submit button changes to Save.
Action Type Groups
Action types are selected from the combobox on the Built-in Steps tab. They fall into two groups:
Built-in steps are the core Playwright-backed actions: clicking, filling, asserting text, navigating, and so on. See Built-in Steps for the full list.
Additional steps are extra pre-built action types for more specialised needs: scrolling, fetching HTTP endpoints, extracting text, generating test data, and others. The available set is fixed; you cannot define new action types. See Additional Steps for the full list.
Fields Common to All Steps
Every step in the editor exposes:
| Field | Description |
|---|---|
| Continue on failure | When checked, a failure does not abort the test run; the failure is reported but execution continues. |
| Named step (test.step) | When checked, the step is wrapped in a named entry, which shows as a named entry in test reports. |
| Run with condition | Collapsed section that controls when the step executes. See Conditions below. |
Many action types also expose a Timeout (milliseconds) field (default 0, which means no timeout).
Conditions
Every step has a Run with condition section. Expand it to choose one of five condition types.
| Condition type | Label in UI | Behaviour |
|---|---|---|
always-run | Always run | The step always executes. This is the default. |
skip | Skip step | The step is always skipped. |
condition | Custom condition | The step runs only if a JavaScript expression returns a truthy value. Exposes a JavaScript Code field. |
element-visibility | Element visibility | The step runs only if the visibility check passes. Exposes Playwright Locator, Element is visible checkbox, and Timeout (milliseconds). |
element-text | Element text | The step runs only if a text check passes. Exposes Playwright Locator, Expected Text, Element should have this text checkbox, and Timeout (milliseconds). |
A funnel icon appears next to Run with condition whenever any condition other than Always run is active.