Skip to main content
Flows are the heart of Autosana. A flow is a test written in natural language that describes what you want your agent to do in your mobile app.

What is a Flow?

A flow is a set of instructions that the agent follows to interact with your mobile app. Instead of writing code or recording clicks, you simply describe what you want to test in natural language. Example Flow:
Open the app
Tap the "Sign Up" button
Enter "[email protected]" in the email field
Enter "SecurePass123" in the password field
Tap "Create Account"
Verify that the welcome screen appears
The agent interprets these instructions, finds the relevant UI elements, executes a series of actions, verifying results at each step.

Creating a Flow

Method 1: Quick Create

  1. Navigate to the Flows page
  2. Click Create Flow
  3. Enter a flow name (required)
  4. Add a description (optional but recommended)
  5. Write your instructions in natural language
  6. Click Create Flow

Method 2: Create in Suite

Create a flow directly within a suite:
  1. Navigate to the Flows page
  2. Expand a suite
  3. Click Create Flow within the suite
  4. Follow the same steps as Quick Create
  5. The flow is automatically added to the suite

Writing Effective Flow Instructions

Best Practices

More Specific Instructions -> More Reliable Results: Instead of “login”, write “Enter ‘[email protected]’ in the email field and ‘password123’ in the password field, then tap the login button”
Include Verification: Include verification steps like “Verify that the smiley face image appears” or “Check that the error message is shown”

Supported Agent Actions

ActionExample Instruction
Tap”Tap the login button”
Enter Text”Enter ‘Joe Banana’ in the name field”
Clear”Clear the text from the email field”
Verify”Verify that ‘Welcome back!’ appears on screen”
Scroll”Scroll down until the settings option appears”
Swipe”Swipe right on the slider”
Wait”Wait for the loading indicator to disappear”
Drag and Drop”Drag the yellow card to the ‘Drop here’ area”
Pinch”Pinch to zoom in on the map until San Francisco takes up the entire screen”
Long Press”Long press on the ‘Share’ button”
Hide Keyboard”Hide the keyboard”
Open Deeplink”Open the deeplink ‘myapp://profile/123‘“
Change Location”Change location to longitude -122.4194, latitude 37.7749”
Toggle Airplane Mode”Turn airplane mode on” (Android only)
Run Hook”Run ${hooks:Generate Test Order}. Then search for the returned order number”

Using Speech-to-Text

Click the microphone icon (🎤) on any text field to dictate your instructions:
  1. Click the microphone icon
  2. Speak your instructions clearly
  3. Click again to stop recording
  4. Review and edit the transcribed text

Running Flows

Running a Single Flow

  1. Find your flow in the Flows table
  2. Click the Play button (▶️)
  3. Select your app
  4. Click Run Flow

Running Multiple Flows

Select multiple flows using checkboxes:
  1. Check the boxes next to flows you want to run
  2. Click Run Selected in the floating action bar
  3. Select your app
  4. Click Run Flows
Shift-Click Selection: Hold Shift and click to select a range of flows quickly

Managing Flows

Editing a Flow

  1. Click the pencil icon (✏️) next to a flow or click on the flow row
  2. Modify the name, description, or instructions
  3. Click Save Changes

Viewing Version History

Flows maintain a complete version history:
  1. Click Edit on a flow
  2. Click the Version History tab
  3. View all previous versions with timestamps
  4. Click Revert to restore a previous version

Duplicating a Flow

To create a copy of an existing flow:
  1. Click the three dots () next to a flow
  2. Select Duplicate
  3. A copy is created with “(Copy)” appended to the name
  4. Edit the duplicate as needed

Deleting a Flow

  1. Click the three dots () next to a flow
  2. Select Delete
  3. Confirm deletion

Organizing Flows with Suites

Suites help you organize related flows and run them together.

Adding a Flow to Suites

Method 1: During Creation
  • When creating a flow, select which suites it should belong to
Method 2: After Creation
  1. Click the three dots () next to a flow
  2. Select Attach to Suite
  3. Check the suites you want to add the flow to
  4. Click Save
Method 3: From Suite View
  1. Expand a suite
  2. Click Add Existing Flows
  3. Select flows to add
  4. Click Add Flows

Removing a Flow from a Suite

  1. Expand the suite containing the flow
  2. Click the three dots () next to the flow
  3. Select Remove from Suite
  4. Confirm removal

Flow Status and Results

Status Types

StatusMeaning
PendingFlow hasn’t been run yet
RunningFlow is currently executing
PassedFlow completed successfully
FailedFlow encountered an error

Viewing Results

Click on any status badge to view detailed results:
  • Screenshots: Visual snapshots at each step
  • Action Log: Every action performed by the agent
  • Errors: Any issues encountered
  • Timeline: Duration of each step
  • Device Info: Device type and OS version used

Advanced Features

Attaching Files

Attach reference images to your flow instructions:
  1. Click the paperclip icon (📎) when creating/editing a flow
  2. Select files to attach
  3. Reference the files in your instructions: “Open the gallery and tap on ${file:smiley_face.jpg}

Using Hooks

Hooks are reusable scripts that run before or after your flow: Setup Hooks: Run before the flow (e.g., “Clear app data and restart”) Teardown Hooks: Run after the flow (e.g., “Logout and clear cache”)
  1. Click Edit on a flow
  2. Click Add Hook
  3. Select Setup or Teardown
  4. Write the hook instructions
  5. Save the flow
You can read more about hooks here.

Bulk Operations

Select multiple flows to perform bulk actions:

Available Bulk Actions

  • Run Selected: Execute multiple flows sequentially
  • Attach to Suite: Add multiple flows to a suite at once
  • Delete Selected: Remove multiple flows

Bulk Selection Tips

  • Click checkboxes: Select individual flows
  • Shift + Click: Select a range of flows
  • Drag selection: Click and drag to select multiple rows
  • Select All: Use the checkbox in the table header

Searching and Filtering

Search by Name

Type in the search bar to filter flows by name in real-time.

Filter by Suite

Click on a suite badge to show only flows in that suite.

Sort Flows

Click column headers to sort by:
  • Name (A-Z or Z-A)
  • Status
  • Last Run (newest/oldest first)

Best Practices

Organize with Descriptive NamesUse clear, descriptive names like “Login with Valid Credentials” instead of “Test 1”
Add DescriptionsInclude what the flow tests, any prerequisites, and expected outcomes in the description field
Keep Flows FocusedEach flow should test one specific feature or user journey. Create multiple flows rather than one long flow.
Use Suites for OrganizationGroup related flows into suites (e.g., “Authentication Flows”, “Checkout Flows”, “Profile Flows”)
Verify OutcomesAlways end flows with verification steps to confirm expected behavior

Troubleshooting

Flow Fails Immediately

Possible Causes:
  • App build is missing or corrupted
  • Bundle ID mismatch
  • App crashes on launch
Solutions:
  • Check that your app has an active build
  • Verify the bundle ID is correct
  • Test the app build manually first

Agent Can’t Find Elements

Possible Causes:
  • UI element description is ambiguous
  • Element isn’t visible on screen
  • Element loads after a delay
Solutions:
  • Be more specific in your instructions (“Tap the blue ‘Submit’ button in the bottom right”)
  • Add wait instructions (“Wait for the submit button to appear”)

Next Steps