Conditional Execution (If / Else / End)
The If block executes a sequence of actions only when a condition is met.Structure
Everyif block must be closed with an end block. An optional else block can be placed between them.
Condition Types
1. JavaScript Expression A JS expression evaluated in the browser page context. Must return a truthy/falsy value.
2. Structured Condition
A form-based alternative to JS expressions. Define a variable or selector, an operator, and a comparison value.
Operators by type:
Example: Login Check
Check whether the user is already logged in, and skip the login form if so:Nested Conditions
You can nestif blocks inside each other. Each nested block requires its own end:
While Loop
Executes a block of actions repeatedly as long as the condition remainstrue.
- Pagination: Click “next page” until there are no more pages.
- Polling: Wait for a specific element or state to appear.
- Retry logic: Re-attempt an action until it succeeds.
Foreach Loop
Iterates over all elements matching a CSS selector, executing the block once per element.
Example: Clicking each item in a list
Repeat N Times
Executes a block a fixed number of times regardless of any condition.loop.index variable is available inside repeat blocks (zero-based).
Example: Submit a form 3 times
Error Handling (On Error)
The On Error block acts like atry/catch. If any action in the main flow throws an error (timeout, element not found, network failure), execution jumps to the error handler block.
on_error/end block before an optional action effectively makes that action non-fatal.
See Error Handling for a deeper guide on retry patterns and resilient task design.
Stop Task
Immediately terminates the current task execution with a given status.stop inside conditionals to short-circuit execution when a goal is already met or when an unrecoverable state is detected.