This is a personal proof-of-concept project. It is not intended for production use. Please refrain from using it.
Skip to content

Generate a suite (URL, docs, spec, or description)

Upliftr is AI debugging agents that debug your app: point them at a live app, your docs, a spec, or a plain description, and they propose a set of plain-English checks they can re-run for you. They work read-only, investigating and diagnosing without ever mutating your code, data, or infrastructure. The fastest way from "I have an app and no checks on it" to a runnable suite the agents re-run.

Sources

  • Live URL, crawl the app. A deep page works (paste the full URL), and you can supply login credentials so pages behind auth are reachable, not just the public surface.
  • Docs / README URL, we fetch the prose and the agents draft checks for your base_url.
  • Pasted text, a PRD, user stories, or any description, plus the app base_url.
  • OpenAPI / spec, paste the spec to inform the generated scenarios.

Exhaustive by default

Generation is multi-pass: it discovers the app's testable areas, then expands each area in parallel into a full scenario set, not just the happy path, but input validation, edge cases, error/empty states, auth/permission, and negative scenarios, each tagged with its kind. Per-area expansion keeps every model call small, so the structured output never truncates on a big app. (Turn off exhaustive for a quick happy-path pass.)

What it does (live URL)

  1. Opens the URL in a headless browser (logging in first when credentials are given).
  2. Reads the page structure, links, forms, buttons, visible text.
  3. Optionally crawls a level or two of same-origin links (default: up to 4 pages, 1 level deep).
  4. Discovers the testable areas, then drafts a thorough suite covering every applicable scenario kind for each area.
  5. Returns canonical Upliftr YAML, ready to save and run.

The generator is grounded: it's told "do not invent credentials or flows that have no evidence on the page," and it prefers concrete, checkable expectations, adding a deterministic check (kind url / visible_text / absent_text) where it reasonably can.

Generate via the API

bash
curl -X POST http://127.0.0.1:8400/api/v1/generate \
  -H 'Content-Type: application/json' \
  -d '{"url": "https://your-app.example.com", "save_as": "quick-test"}'
  • url, the page to start from.
  • save_as (optional), a name to save the suite under (.yaml is appended if missing). Omit it to just get the YAML back without saving.

Response:

json
{ "yaml": "suite: ...\n...", "saved_as": "quick-test.yaml" }

From the dashboard

In Tests, paste a URL into the generate flow. The agents crawl, propose the suite, and drop you into the editor with the YAML pre-filled. Review the cases, tweak the expectations, and run it like any other suite.

What the output looks like

A generated suite is ordinary Upliftr YAML, sequenced cases, plain-English steps, and checked expectations:

yaml
suite: "Acme, key flows"
id: acme-key-flows
base_url: https://your-app.example.com
cases:
  - id: nav-pricing
    title: "Pricing is reachable from the nav"
    steps:
      - { id: s1, do: "Open the home page" }
      - { id: s2, do: "Click the Pricing link in the navigation" }
    expect:
      - { id: a1, assert: "the pricing page is shown",
          check: { kind: url, contains: "pricing" } }

Always review before relying on it

Generation is best-effort and a starting point, not a finished test plan. It can only propose flows it can see evidence for on the crawled pages, and it never invents credentials. Treat the output as a first draft: confirm the steps match real flows, tighten the assertions, and add the deep flows (checkout, settings, anything behind auth) by hand.

Related: Quick test a URL · Writing Tests · The autonomous agent

Upliftr · AI-native, self-healing E2E testing. Terms · Privacy · Legal Notice