YAML Test Format

Intent-driven testing in plain YAML. Designed for agents to work, humans to stay in control. Tests describe what users do, not how the DOM is structured. They self-heal when the UI changes and work locally or in CI.

Tests that read like user stories.

Each step has an intent that describes the user goal. Locators are cached for speed, but when they break, the AI re-derives the action from the intent — no manual fix needed.

goal: Verify user can create a new project
base_url: https://app.example.com

statements:
  - URL: /projects
  - intent: Click the "New Project" button
  - intent: Enter "My Test Project" in the project name field
  - intent: Click "Create"
    action: click
    locator: "getByRole('button', { name: 'Create' })"
  - VERIFY: Project page shows title 'My Test Project'

Core Features

Intent-driven execution

Tests describe what users do, not how the feature is built. Implementation changes don't break tests — only behavior changes do.

Self-healing by design

Tests are resilient to non-functional changes. Real behavior changes are surfaced as failures.

Fits your existing workflow

Runs alongside your existing Playwright tests and configuration. Add YAML tests incrementally — no migration, no new tooling to learn.

Ecosystem

Part of the Shiplight Plugins

Browser MCP server and YAML tests work together. Your agent uses the MCP server to automate development, skills guide it to write YAML tests, and the Shiplight runtime runs them.

Browser MCP Server

Eyes and hands for your agent. Automates browser interactions during development.

Skills

Guide your agent to write thorough, self-healing YAML tests from browser MCP interactions.

Shiplight Runtime

Executes YAML tests, provides feedback to your agent, generates comprehensive reports, and supports local debugging.

Readable tests. Reliable results.