> ## Documentation Index
> Fetch the complete documentation index at: https://docs.spurtest.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Scenario Tables

> Simplify and scale your test suites by using parameterized test data instead of creating multiple nearly identical tests.

## What are Scenario Tables?

Scenario Tables are a powerful feature in Spur that help you simplify and scale your test suites by using parameterized test data. Instead of creating multiple nearly identical tests with different inputs, you can write one test that dynamically runs through multiple scenarios defined in a table.

<Frame caption="Overview of Scenario Tables">
  <img src="https://mintcdn.com/spur/H3xqe3VyV7YeO-e5/images/Screenshot2026-02-05at2.58.27PM.png?fit=max&auto=format&n=H3xqe3VyV7YeO-e5&q=85&s=0d5ffa7bd263c8c58cff1a9f04a10794" alt="Screenshot 2026 02 05 At 2 58 27 PM" width="2178" height="1244" data-path="images/Screenshot2026-02-05at2.58.27PM.png" />
</Frame>

<Info>
  **Understanding the structure:**

  * Each **row** = one scenario (test variation)
  * Each **column** = one property (variable you'll use in tests)
</Info>

## How to Set Up Scenario Tables

### Step 1: Create Your Scenario Table

Navigate to the **Scenario Tables** section in Spur and choose your preferred method:

<img src="https://mintcdn.com/spur/9IFtS_isfyhWoPyj/Screenshot2025-04-28at5.39.54PM.png?fit=max&auto=format&n=9IFtS_isfyhWoPyj&q=85&s=0e2ecefdabce617b0cedbcdf84743eb1" alt="Screenshot 2025-04-28 at 5.39.54 PM.png" width="646" height="132" data-path="Screenshot2025-04-28at5.39.54PM.png" />

<Tabs>
  <Tab title="Manual Creation">
    <Note>
      Best for small datasets
    </Note>

    <Steps>
      <Step title="Click 'New Scenario'">
        Click the New Scenario button
      </Step>

      <Step title="Enter table details">
        * **Scenario Table Name**: Choose a descriptive name
        * **Description**: Explain what scenarios this table covers

                  <img src="https://mintcdn.com/spur/9IFtS_isfyhWoPyj/Screenshot2025-04-28at5.51.43PM.png?fit=max&auto=format&n=9IFtS_isfyhWoPyj&q=85&s=48c7e792d3dfc88752c1300d0bdc320b" alt="Screenshot 2025-04-28 at 5.51.43 PM.png" width="1092" height="976" data-path="Screenshot2025-04-28at5.51.43PM.png" />
      </Step>

      <Step title="Create your scenario">
        Click "Create Scenario"
      </Step>

      <Step title="Add your data">
        Add your data manually in the table editor
      </Step>

      <Step title="Save your changes">
        Click "Save Edits" when finished
      </Step>
    </Steps>

    <img src="https://mintcdn.com/spur/9IFtS_isfyhWoPyj/Screenshot2025-04-28at5.11.43PM.png?fit=max&auto=format&n=9IFtS_isfyhWoPyj&q=85&s=481913db4ee8b91c04347b95aa6e5159" alt="Screenshot 2025-04-28 at 5.11.43 PM.png" width="2554" height="790" data-path="Screenshot2025-04-28at5.11.43PM.png" />
  </Tab>

  <Tab title="Import via CSV">
    <Note>
      Recommended for bulk data
    </Note>

    <img src="https://mintcdn.com/spur/9IFtS_isfyhWoPyj/Screenshot2025-04-28at5.42.12PM.png?fit=max&auto=format&n=9IFtS_isfyhWoPyj&q=85&s=b7037994b924500ee552d9ca11204031" alt="Screenshot 2025-04-28 at 5.42.12 PM.png" width="1552" height="926" data-path="Screenshot2025-04-28at5.42.12PM.png" />

    <Steps>
      <Step title="Click 'Import via CSV'">
        Click the Import via CSV button in the Scenario Tables section
      </Step>

      <Step title="Prepare your CSV file">
        Follow this format:

        <img src="https://mintcdn.com/spur/M9lHLoA7TzDZQpbJ/images/image.png?fit=max&auto=format&n=M9lHLoA7TzDZQpbJ&q=85&s=43c513db07a46b16e55b110ef243b3b0" alt="image.png" width="2776" height="1410" data-path="images/image.png" />

        <Warning>
          **Important CSV requirements:**

          * First column must be "Scenario Name"
          * Property names cannot contain spaces
          * Each property name must be unique
          * Use underscores instead of spaces for column names (e.g., `user_email` instead of `user email`)
        </Warning>
      </Step>

      <Step title="Upload your CSV file">
        <img src="https://mintcdn.com/spur/9IFtS_isfyhWoPyj/Screenshot2025-04-28at5.47.37PM.png?fit=max&auto=format&n=9IFtS_isfyhWoPyj&q=85&s=9510be61a3ab69310e7c13d08a925fe6" alt="Screenshot 2025-04-28 at 5.47.37 PM.png" width="1538" height="878" data-path="Screenshot2025-04-28at5.47.37PM.png" />
      </Step>

      <Step title="Configure table details">
        * Enter **Scenario Table Name**
        * Add a clear **Description**
        * Review the preview to confirm correct import

                  <img src="https://mintcdn.com/spur/9IFtS_isfyhWoPyj/Screenshot2025-04-28at5.48.13PM.png?fit=max&auto=format&n=9IFtS_isfyhWoPyj&q=85&s=a5bf0464248683cbfed29471d15e7649" alt="Screenshot 2025-04-28 at 5.48.13 PM.png" width="1482" height="1120" data-path="Screenshot2025-04-28at5.48.13PM.png" />
      </Step>

      <Step title="Import your table">
        Click "Import" to create your table
      </Step>
    </Steps>
  </Tab>
</Tabs>

### Step 2: Connect Your Table to a Test

<Warning>
  Scenario Tables must be connected to **Test Suites**, not individual tests. Once connected to a suite, all tests within that suite can use the scenario properties.
</Warning>

#### How it works:

1. **Connect** the Scenario Table to a Test Suite
2. **Use** the properties `[property_name]` in any test within that suite
3. **Run** the suite to execute all scenarios across all tests

Now you'll connect your Scenario Table to a test suite. You can do this in two ways:

#### Option 1: Through Test Suites Menu

<Steps>
  <Step title="Go to Test Suites">
    Navigate to the Test Suites section
  </Step>

  <Step title="Select your test suite">
    Choose the test suite you want to connect to a scenario table
  </Step>

  <Step title="Access suite menu">
    Click the three-dot menu (⋯) next to your test suite
  </Step>

  <Step title="Connect scenario table">
    Select "Connect Scenario Table" from the dropdown menu
  </Step>

  <Step title="Choose your table">
    Select the scenario table you want to connect to this test suite
  </Step>
</Steps>

#### Option 2: Through Test Editor

<Steps>
  <Step title="Create or edit a test">
    Open the test editor for your chosen test
  </Step>

  <Step title="Add scenario variables">
    In the test editor:

    * Type `[` to open the scenario variable menu
    * Select your Scenario Table (e.g., "Flight List Table")
    * Insert properties into test steps (e.g., "Type \[From\_city]")
  </Step>
</Steps>

<Tip>
  Property names will auto-complete as you type, making it easy to reference your scenario data.
</Tip>

<Card title="Learn More" icon="book">
  [Detailed guide for using Scenarios in Tests →](/authoring-tests/scenarios/scenarios)
</Card>

### Step 3: Run and Monitor Your Tests

After saving your scenario-based test:

<Steps>
  <Step title="Execute your test">
    Click "Run" to execute all scenarios
  </Step>

  <Step title="View results">
    Check results in Run History, broken down by scenario:

    <img src="https://mintcdn.com/spur/9IFtS_isfyhWoPyj/Screenshot2025-04-28at6.05.04PM.png?fit=max&auto=format&n=9IFtS_isfyhWoPyj&q=85&s=2b595bec3a182125eb47a183de8bab57" alt="Screenshot 2025-04-28 at 6.05.04 PM.png" width="1288" height="728" data-path="Screenshot2025-04-28at6.05.04PM.png" />

    * Example: Separate results for DFZ scenario and LAX scenario
  </Step>

  <Step title="Inspect individual scenarios">
    Click each scenario to inspect individual steps and outcomes <img src="https://mintcdn.com/spur/9IFtS_isfyhWoPyj/clickonscenario.gif?s=b75f0ae96923efc6c9f567133b73e7ff" alt="clickonscenario.gif" width="756" height="480" data-path="clickonscenario.gif" />
  </Step>

  <Step title="Schedule recurring runs">
    Schedule recurring runs just like regular test suite <img src="https://mintcdn.com/spur/9IFtS_isfyhWoPyj/Screenshot2025-07-14at5.58.05PM.png?fit=max&auto=format&n=9IFtS_isfyhWoPyj&q=85&s=82153d600439dd19b1e55ae4c5dfd0dd" alt="Screenshot 2025-07-14 at 5.58.05 PM.png" width="1108" height="1110" data-path="Screenshot2025-07-14at5.58.05PM.png" />
  </Step>
</Steps>

***

## Managing Scenarios

<AccordionGroup>
  <Accordion title="Enable/Disable Scenarios">
    Use the toggle switch in the Status column to enable or disable specific scenarios without deleting them. Disabled scenarios won't run when you execute the test.
  </Accordion>

  <Accordion title="Edit Scenarios">
    Click any cell in the scenario table to edit values directly. Changes save automatically.
  </Accordion>

  <Accordion
    title="Add New Scenarios
"
  >
    Click **+ New Scenario** at the bottom of the table or press the keyboard shortcut to add additional scenario rows.
  </Accordion>

  <Accordion title="Delete Scenarios">
    Select scenarios and use the delete option to remove them from your table.
  </Accordion>
</AccordionGroup>

## Best Practices

* **Start simple**: Begin with 2-3 scenarios to validate your test logic before scaling up
* **Use descriptive scenario names**: Make it easy to identify which scenario failed in test results
* **Organize related scenarios together**: Group similar test variations in the same scenario table
* **Keep variables consistent**: Use the same variable names across related tests for easier management
* **Test with one scenario first**: Verify your test works correctly with a single scenario before adding more
* **Document edge cases**: Use scenario names to clearly indicate boundary conditions or special cases

## Key Benefits

<Columns cols={2}>
  <Card title="Reduce Redundancy">
    Write one test instead of many duplicate tests. A single parameterized test can handle dozens of scenarios without duplicating test logic.
  </Card>

  <Card title="Easier Maintenance">
    Update inputs in one central location. When test data needs to change, modify the scenario table rather than updating multiple individual tests.
  </Card>
</Columns>

<Columns cols={2}>
  <Card title="Better Test Coverage">
    Easily test variations and edge cases. Add new scenarios to your table without modifying test logic, enabling comprehensive coverage of input combinations.
  </Card>

  <Card title="Scalability">
    Easily test variations and edge cases. Add new scenarios to your table without modifying test logic, enabling comprehensive coverage of input combinations.
  </Card>
</Columns>

***
