Recording Scenarios
A Scenario represents a user flow or UI state you want to document. Reshot records your interactions and converts them into replayable automation scripts.
Starting a Recording
From the Terminal
reshot record "Login Flow"
From the Studio UI
- Open Studio with
reshot studio - Click the Record button
- Enter a scenario name
How Recording Works
When you start recording, Reshot:
- Connects to your Chrome debugging session
- Listens for user interactions (clicks, typing, navigation)
- Generates robust selectors for each element
- Logs actions to memory in real-time
Selector Strategy
Reshot uses a "Robust Selector" engine that prioritizes stable selectors:
- Data Test IDs:
[data-testid="nav-menu"] - Accessibility Attributes:
role=button[name="Save"] - Text Content:
text="Welcome" - CSS Selectors:
.btn-primary,#submit(fallback)
Recording Controls
During a recording session:
| Action | Key | Description |
|---|---|---|
| Interact | - | Click and type normally; actions are recorded |
| Capture | C | Opens the capture menu (screenshot/video) |
| Quit | Q | Saves the scenario and exits |
Best Practices
Add data-testid attributes to key UI elements in your application. This ensures stable selectors that won't break when CSS classes change.
Tips for Reliable Recordings
- Use explicit waits: Add
waitForsteps when content loads dynamically - Avoid timing issues: Use element-based waits instead of fixed delays
- Test your scenarios: Run them multiple times to ensure consistency
- Keep scenarios focused: One scenario per user flow or feature
Editing Recorded Scenarios
After recording, scenarios are saved to docsync.config.json. You can edit them directly:
{
"scenarios": [
{
"name": "login-flow",
"steps": [
{ "action": "goto", "url": "/login" },
{ "action": "type", "selector": "[data-testid='email']", "text": "user@example.com" },
{ "action": "type", "selector": "[data-testid='password']", "text": "••••••••" },
{ "action": "click", "selector": "button[type='submit']" },
{ "action": "waitFor", "selector": "[data-testid='dashboard']" },
{ "action": "capture", "key": "dashboard-after-login" }
]
}
]
}
Multi-Step Visual Workflows
Multi-step scenarios generate a separate visual for each capture step. When embedded in documentation using ReshotSteps, they render as a Scribe-like walkthrough with numbered steps and action indicators.
Example: Multi-Step Capture
Here's a complete multi-step walkthrough of running a capture from Studio:
Select Scenario
Choose which scenarios to capture from the list.
initialCheck Scenario
Select the scenario checkbox to include it in the run.
clickRun Capture
Click Run to start the capture job and generate assets.
clickMulti-step scenarios are ideal for documenting user flows, onboarding sequences, and any process that requires step-by-step guidance.