Steps and selectors
What each step type does, how elements are targeted, and why some selectors survive redesigns while others do not.
A step is one instruction. The recorder writes them for you, but understanding the vocabulary makes it far easier to fix a test later, because most maintenance is editing a step rather than re-recording a journey.
- 1The step type. Click, Type Text, Assert, and the rest each behave differently.
- 2The description. Edit it so the run report reads clearly.
- 3Replay just this step to check a fix without running the whole journey.
- 4Edit the step to change its selector or value.
- 5Drag the handle to reorder steps.
Step types
- Click: press a button, link, or any clickable element.
- Type: enter text into a field. The value can contain variables.
- Navigate: go straight to a URL rather than clicking your way there.
- Wait: pause for a fixed time, or until something appears.
- Scroll: move the viewport, which matters for lazy-loaded content.
- Hover: reveal menus and tooltips that only appear on hover.
- Upload: attach a file from your Files library to a file input.
- Dialog: accept or dismiss a native browser alert, confirm, or prompt.
- Assert: check that something is true rather than doing anything.
- Script: run a saved Node, Python, or TypeScript script mid-flow.
- Block: expand a saved group of steps in place.
How elements are targeted
Every acting step needs to know which element it applies to. The recorder captures a selector at the moment you interact, choosing the most specific stable-looking path it can find. That works well for buttons with stable ids or distinctive text, and less well for elements whose classes are generated by a build step and change on every deploy.
If a selector contains a long random-looking class name, expect it to break the next time your CSS is rebuilt. Adding a data attribute to the element in your own code and targeting that is the durable fix.
Editing a step
Click any step in the recorder to open it. You can change its description, adjust the selector or value, mark it continue-on-failure so a non-critical step does not abort the run, and reorder it by dragging. Replaying a single step from the recorder is the fastest way to confirm a fix without running the whole journey again.
Still stuck, or spotted something out of date?
Contact support