Steps
Built-in Steps
Pre-defined step types available in SmoothDeploy
SmoothDeploy provides a comprehensive set of built-in step types for common testing scenarios.
Navigation Steps
Navigate
Navigate to a specific URL.
Configuration:
- URL: The page to navigate to
- Wait: Whether to wait for page load
Go Back
Navigate to the previous page in browser history.
Go Forward
Navigate to the next page in browser history.
Refresh
Reload the current page.
Interaction Steps
Click
Click on buttons, links, or other elements.
Configuration:
- Target Element: What to click on
- Wait Time: How long to wait for element
- Button Type: Left, right, or double click
Type
Enter text into form fields.
Configuration:
- Target Field: Which field to type in
- Text: What text to enter
- Clear First: Whether to clear existing text
Select
Select options from dropdowns.
Configuration:
- Dropdown: Which dropdown to use
- Option: Which option to select
- Value: The value to select
Upload
Handle file uploads.
Configuration:
- File Input: Which file input to use
- File Path: Path to file to upload
Validation Steps
Assert Text
Verify text content of elements.
Configuration:
- Element: Which element to check
- Expected Text: What text should appear
- Exact Match: Whether text must match exactly
Assert Element
Check if element is present.
Configuration:
- Element: Which element to look for
- Visible: Whether element must be visible
- Timeout: How long to wait for element
Assert URL
Verify current page URL.
Configuration:
- Expected URL: What URL should be current
- Partial Match: Whether URL can be partial
Utility Steps
Wait
Pause execution for specified time.
Configuration:
- Duration: How long to wait in milliseconds
Wait for Element
Wait for element to appear.
Configuration:
- Element: Which element to wait for
- Timeout: Maximum time to wait
- Visible: Whether element must be visible
Screenshot
Capture page or element screenshot.
Configuration:
- Element: Which element to capture (optional)
- Full Page: Whether to capture entire page
- Save Path: Where to save screenshot
Best Practices
Selector Strategy
- Use stable, unique selectors
- Prefer data-testid attributes
- Avoid fragile CSS selectors
- Test selectors across browsers
Timing Considerations
- Add appropriate waits
- Use explicit waits over fixed delays
- Consider network conditions
- Test on different devices
Error Handling
- Include validation steps
- Handle dynamic content
- Plan for edge cases
- Test error scenarios