Skip to content

Test Suites

A test suite is a reusable configuration that executes one catalog template against selected endpoints.

A suite combines five parts:

  • template: defines checks and expected output model
  • targets: endpoint list for execution
  • reference endpoint: the endpoint marked as reference on the Endpoints page, used as source of truth for comparisons
  • schedule: manual, interval, on_every_n_blocks, or on_timestamp
  • params: template-specific values

Suites are scoped to a single chain.

  1. Create from catalog template
  2. Configure endpoints and parameters
  3. Enable schedule or run manually
  4. Review runs and tune thresholds
  5. Disable, update, or delete as needed

Templates in Suite Catalog (/suites/catalog) define:

  • which RPC methods are called
  • assertion rules
  • optional comparison logic
  • required/optional parameters

When a suite run starts:

  1. A worker receives run config snapshot
  2. Calls are executed per target endpoint
  3. Assertions evaluate pass/fail/skip
  4. Comparison verdict is computed if multi-endpoint
  5. Metrics and samples are stored

Suite-level enabled controls scheduled execution.

  • enabled=true: scheduler may trigger runs
  • enabled=false: only manual/API trigger if supported by permissions

If a suite fails to resolve any valid targets for 3 consecutive scheduler evaluations, it is automatically disabled. This protects against suites running indefinitely against misconfigured or empty target sets.

Common causes: all matched endpoints were deleted, tag selectors match nothing, or targets are misconfigured. The suite stores a structured disabled_reason with a breakdown of what failed, and an suite_disabled alert is fired.

Fix the target configuration and re-enable the suite to resume scheduling.

Common configurations include:

  • Smoke checks every 5 minutes on production RPC
  • Deep regression checks hourly or on block events
  • Pre/post upgrade baseline comparisons
  • Provider A vs provider B consistency checks

See Configure Suites and Upgrade Testing.

  • Keep suites focused and purpose-specific
  • Use clear names including env and interval
  • Separate canary suites from deployment gates
  • Review failing assertions before widening thresholds