Instruction
AI-powered action step. Describe what to do in natural language, and Revyl figures out which elements to interact with.- Field:
instruction(e.g., “Tap the login button”, “Type ‘hello’ in the search field”) - Supports
{{variables}}in the instruction text.
Validation
Assert a condition on the current screen state. Fails the test if the assertion doesn’t hold.- Field:
instruction(e.g., “The home screen is visible”, “The price shows $9.99”)
Extraction
Capture data from the screen into a variable for use in later steps.- Fields:
instruction(e.g., “Get the order confirmation number”),variable_name(where to store the result)
Script
Run custom code in a sandboxed environment. Supports Python, JavaScript, TypeScript, and Bash.- Fields:
codeor select a library script,language, optionalvariable_namefor output
Manual
Precise device-level actions that don’t require AI interpretation. Every Manual sub-type except Wait is mobile-only.Loop (While)
Repeat a block of steps while a condition is true (checked each iteration).- Fields:
condition(natural language condition),body(nested steps) - Default max iterations: 5
Decision (If/Else)
Branch execution based on a screen condition.- Fields:
condition(natural language condition),then(steps if true),else(steps if false)
Module
Insert a reusable group of steps from the Library into your test. The module’s steps execute inline during the run, as if they were part of the test.- Field:
module_id(select a module by name from the dropdown) - Changes to the module apply automatically to every test that imports it.