Overview
Manual test creation gives you complete control over your test cases. The workflow starts with creating a test case, adding scenario notes to outline what you want to test, then using the Editor with its Visual Step Editor and Recorder to build your steps.The Manual Creation Workflow
Step 1: Create a Test Case
- Navigate to Tests in the sidebar
- Click Create → New Test Case
- Enter a descriptive title (e.g., “User can complete checkout”)
- Select a folder and add tags
- Click Create
Step 2: Add Scenario Notes
Before building steps, outline your test flow using Scenario Notes. These are plain-text descriptions of what the test should do.Why Use Scenario Notes?
- Mental model: Organize your thoughts before automating
- Documentation: Keep a human-readable description of the test
- AI-ready: Scenario notes can be used by AI Action Agent to automate steps
Example Scenario Notes
Step 3: Build Steps in the Editor
With your scenario notes as a guide, use the Editor to create the actual test steps.Visual Editor
Build tests step-by-step with precise control
Recorder
Capture browser interactions automatically
Visual Step Editor
The Visual Step Editor lets you add steps one at a time with precise control. How to use:- Click + to add a new step
- Select the step type (Click, Fill, Navigate, etc.)
- Configure the step:
- Use Element Picker to select elements from the live browser
- Enter values, locators, and assertions
- Run the step to verify it works
- Precise locator control
- Complex assertions and conditions
- Adding loops, conditionals, and snippets
- Fine-tuning recorded steps
Recorder
The Recorder captures your browser interactions and converts them to steps automatically. How to use:- Click Start Recording in the Editor
- Interact with your application in the live browser
- Watch steps appear as you click, type, and navigate
- Click Stop Recording when done
- Review and refine the recorded steps
- Long user flows (20+ steps)
- Exploratory testing
- Quick prototyping
- Complex navigation sequences
Combining Both Tools
The most effective approach uses both tools together:Recommended Workflow
-
Start with Recorder for the main flow
- Capture navigation, clicks, and form fills quickly
-
Refine with Visual Editor
- Fix locators that need more stability
- Add assertions the recorder missed
- Configure waits for dynamic content
- Replace hardcoded values with expressions
-
Add what Recorder can’t capture
- Verification steps (assertions)
- Conditional logic
- Loops for repeated actions
- Snippets for reusable flows
Example: Building a Login Test
Element Picker
The Element Picker is essential for both workflows.How It Works
- Click the crosshair icon to activate
- Hover over elements in the live browser
- Click to capture the locator
- Review and adjust if needed
Locator Strategies
| Strategy | Example | Stability |
|---|---|---|
| Test ID | [data-testid="submit-btn"] | Most stable |
| Role | button[name="Submit"] | Very stable |
| CSS Selector | .submit-button | Moderate |
| Text content | text="Submit" | Can break if text changes |
Best Practices
Start with Scenario Notes
- Write out what you’re testing before automating
- Keep notes simple and action-focused
- Update notes if the test changes
Keep Tests Focused
- One test = one user flow or feature
- 5-15 steps is typical
- Split long flows into multiple tests
Add Meaningful Assertions
- Every test should verify something
- Don’t just check that steps don’t crash
- Verify the expected outcome occurred
Use Expressions for Flexibility
{{ env.BASE_URL }}for environment URLs{{ env.TEST_EMAIL }}for credentials{{ random.email() }}for unique data
Troubleshooting
Recorder Missing Steps
- Some interactions may not be captured
- Add missing steps manually with Visual Editor
- Check if the page uses non-standard controls
Locators Breaking
- Elements may change between sessions
- Use Element Picker to update locators
- Prefer data-testid over CSS classes
Steps Timing Out
- Add explicit wait steps for dynamic content
- Increase step timeout in settings
- Check if element is in an iframe

