Steps Overview
Concept overview of steps — what they are, how they fit together, and how to start using them
Steps are the building blocks of every test in SmoothDeploy. This overview explains the concept and the basic creation flow. For the full configuration surface — every action type, every condition, shared-step parameters, inheritance, versioning — see the Step Management Reference.
Step Types
Individual Steps
Single actions that perform specific operations.
Examples:
- Click a button
- Type in a field
- Navigate to a URL
- Assert element presence
Group Steps
Containers that organize multiple related steps.
Use Cases:
- Login sequence
- Form filling workflow
- Navigation flow
- Cleanup operations
Creating Steps
Manual Step Creation
- Navigate to Steps section
- Click "Create New Step"
- Configure step properties:
- Name: Descriptive step name
- Type: Action category
- Parameters: Step-specific settings
- Metadata: Additional configuration
- Test the step
- Save the step
Step Configuration
Basic Properties
- Name: Human-readable identifier
- Description: Purpose and usage notes
- Group: Whether step contains sub-steps
- Shared: Whether step can be reused
- Action: FullAction object defining behavior
Action Types
Navigation Actions:
- Navigate to specific URLs
- Go back/forward in browser history
- Refresh the current page
Interaction Actions:
- Click buttons, links, or elements
- Type text into form fields
- Select options from dropdowns
- Upload files
Validation Actions:
- Check if text appears on page
- Verify elements are present
- Assert page conditions
- Validate form submissions
Step Conditions
Condition Types
Always Run: Execute step in every test run.
If Element Exists: Only execute if target element is present.
If Variable Equals: Execute based on variable value.
Custom Logic: JavaScript expression for complex conditions.
Best Practices
Step Design
- Single Responsibility: One action per step
- Descriptive Names: Clear purpose indication
- Parameterized: Use variables for flexibility
- Well Documented: Include usage examples
Organization
- Logical Grouping: Organize by function
- Naming Conventions: Consistent patterns
- Tagging System: Easy discovery
- Regular Review: Keep steps current
Maintenance
- Version Control: Track all changes
- Testing: Validate step functionality
- Documentation: Update usage guides
- Deprecation: Remove unused steps
Performance
- Efficient Code: Optimize execution time
- Resource Management: Minimize resource usage
- Caching: Leverage browser caching
- Parallel Execution: Design for concurrency