Steps
Steps are the building blocks of test cases. Each step is a natural language instruction that the AI executes.
Step Structure
A step consists of:
| Field | Required | Description |
|---|---|---|
| Description | Yes | What to do (e.g., "Click the login button") |
| Data | No | Input value for the step |
| Wait Until | No | Condition to verify before next step |
| Bypass Cache | No | Force AI execution (skip cache) |
Writing Effective Steps
Be Specific
❌ "Click button"
✅ "Click the 'Add to Cart' button"
Describe the Target Element
❌ "Enter text"
✅ "Enter email in the login form email field"
Include Context When Needed
❌ "Click submit"
✅ "Click the 'Submit Order' button in the checkout form"
Step Examples
Click Actions
Click the "Sign In" button in the header
Click on the first product in the list
Click the checkbox to accept terms
Input Actions
Enter the email address in the email field
Type "Hello World" in the message textarea
Enter the search query in the search box
Navigation
Navigate to the Settings page
Click the "Account" link in the sidebar
Go back to the previous page
Waiting
Wait for the loading spinner to disappear
Wait until the success message is visible
Wait for the page to finish loading
Data Field
The data field provides input values for steps that require them:
Step: Enter the email address in the email field
Data: test@example.com
Dynamic Data
Use placeholders for dynamic values:
{{run.email}}- generates a unique email per test{{run.fullName}}- generates a random name{{global.email}}- shared across all tests in an execution
See Dynamic Placeholders for all options.
Wait Until Field
waitUntil makes the AI wait for a condition after executing the step:
Step: Click the "Submit" button
Wait Until: Success message is displayed
The AI polls for the condition with a 30-second timeout. Use for actions that trigger navigation or async operations.
When to Use Wait Until
- After clicking buttons that trigger API calls
- After navigation to wait for page load
- When waiting for animations or loading states
Bypass Cache
Bug0 caches successful step executions for faster reruns. Enable "Bypass Cache" to:
- Force the AI to re-execute the step
- Debug when cached actions no longer work
- Test after significant UI changes
Step Order
Steps execute sequentially from top to bottom. Reorder by:
- Dragging steps in the editor
- Steps automatically renumber
Adding Steps
From the Editor
- Click Add Step below the last step
- Enter the step description
- Optionally add data and wait condition
From AI Generation
- Use "Generate from Video" or "Generate from Text"
- AI creates multiple steps automatically
- Review and edit as needed
Editing Steps
Click on any step field to edit:
- Description - What the step does
- Data - Input value
- Wait Until - Post-step condition
- Bypass Cache - Toggle caching
Changes auto-save after a short delay.
Deleting Steps
- Hover over the step
- Click the trash icon
- Step is removed immediately
Best Practices
- One action per step - "Click login AND enter email" should be two steps
- Be descriptive - Help the AI find the right element
- Use wait conditions - For async operations
- Test incrementally - Run after adding each step to verify
- Use dynamic data - Avoid hardcoded values when possible