Live demo — data resets daily at 03:00 UTC. Nothing you enter is saved. Server UI →

product: maestro audience: test-developer authority: normative

Prompt Value Input

A prompt step can display an interactive input control so the operator can enter a measured value, confirm a string, toggle a boolean, or select from a list.

The entered value IS:

  1. Stored in a named variable (available to downstream steps via {{variable}}).
  2. Stored in the well-known InputValue variable.
  3. Limit-checked (number mode) or compared against an expected value (text / boolean / list modes) to determine the step verdict.

Input modes

mode Control Verdict check
number Numeric text field low_limit ≤ value ≤ high_limit
text Free-text field value == expected (or always PASS if no expected)
boolean True / False toggle value == expected (or always PASS if no expected)
list Drop-down select value == expected (or always PASS if no expected)

Verdict priority

  1. Abort button pressedABORTED (highest — ignores limit check).
  2. Fail button pressedFAIL.
  3. Pass / Continue button pressed → limit / expected check runs:
    • Check passes → PASS.
    • Check fails → FAIL.

Output variables

Variable Value
{{<variable>}} Value entered by the operator
{{InputValue}} Same value, always written under this well-known name
{{Response}} Button name pressed
{{Action}} Button action string
{{TimedOut}} "True" / "False"

Number mode — voltage limit check

- name: "Measure Supply Voltage"
  type: prompt
  prompt:
    title: "Voltage Entry"
    message: "Connect DMM to TP1 / TP2 and enter the measured value."
    input:
      mode: number
      variable: supply_voltage
      low_limit: 4.75
      high_limit: 5.25
      unit: "V"
    buttons:
      - name: "Submit"
        action: continue
  post_execution_action: terminate-on-fail

Omit both low_limit and high_limit for informational logging — the step always passes.

Text mode — firmware version check

- name: "Verify Firmware Version"
  type: prompt
  prompt:
    message: "Read the firmware version from the device display and type it below."
    input:
      mode: text
      variable: fw_version
      expected: "v2.1.0"
    buttons:
      - name: "Confirm"
        action: continue
  post_execution_action: terminate-on-fail

Boolean mode — relay continuity check

- name: "Relay Self-Test"
  type: prompt
  prompt:
    message: "Does the multimeter show continuity across pins 3 and 7?"
    input:
      mode: boolean
      variable: relay_closed
      expected: "true"
    buttons:
      - name: "Submit"
        action: continue
  post_execution_action: terminate-on-fail

List mode — LED colour selection

# Informational — any selection passes
- name: "Record LED Colour"
  type: prompt
  prompt:
    message: "Select the LED colour you observe."
    input:
      mode: list
      variable: led_colour
      options: ["Green", "Amber", "Red", "Off"]
    buttons:
      - name: "Submit"
        action: continue
# Pass/fail — must be Green
- name: "LED Must Be Green"
  type: prompt
  prompt:
    message: "Select the LED colour (must be Green to pass)."
    input:
      mode: list
      variable: led_colour
      options: ["Green", "Amber", "Red", "Off"]
      expected: "Green"
    buttons:
      - name: "Submit"
        action: continue
  post_execution_action: terminate-on-fail

Using the entered value in downstream steps

steps:
  - name: "Enter Voltage"
    type: prompt
    prompt:
      message: "Enter measured voltage."
      input:
        mode: number
        variable: measured_v
        low_limit: 4.75
        high_limit: 5.25
        unit: "V"
    buttons:
      - name: "Submit"
        action: continue

  - name: "Log Voltage Measurement"
    type: mock
    measurement:
      name: "VOUT"
      value: "{{measured_v}}"
      low_limit: 4.75
      high_limit: 5.25
      unit: "V"

Required vs optional input

By default required: true — submit buttons are disabled until the operator enters a non-empty value. Set required: false for optional fields:

input:
  mode: text
  variable: operator_note
  required: false

Step result measurement

When a prompt step includes input:, the entered value and its limits/expected value ARE recorded as a measurement point on the step result — identical to gRPC runner measurements. Expand the step in the test results tree to see the actual value alongside the configured limits.

Sample package

sample-prompt-value-input in the package browser demonstrates all four modes with and without limit / expected-value checks.

An unhandled error has occurred. Reload 🗙

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.