Sign in

Auretis: plain-language browser test automation with deterministic Playwright assertions

Write steps in plain English. The agent finds the elements, and deterministic Playwright assertions decide the verdict. When it's green, it passed.

01The maintenance tax

Selector-based e2e rots on every UI change

You write a test once, then maintain it forever. A class renames, a div moves, and the suite goes red for reasons that have nothing to do with your product.

You triage false failures instead of shipping, and flaky tests train the team to ignore red. The tests meant to protect the product become the thing you maintain instead of the product.

02How it works

Write the scenario. The agent re-finds the UI every run.

  1. 01

    Author in plain English

    Write one plain-language task, or an ordered step builder with Task, Locate, Act, Assert, and Wait steps. Locate an element once and reference it by number later. It re-resolves each run. It is not a frozen selector.

  2. 02

    A real browser runs it

    The agent drives a real browser over Playwright and re-finds every element from your description on each run. A redesign does not break a test that still works.

  3. 03

    You pick the verdict

    Pass or fail comes from deterministic Playwright assertions you choose: 23 types, each negatable, with Playwright's own parameters. No LLM sits in the verdict path.

  4. 04

    You get evidence

    Every run returns screenshots, on initial load and after each action, plus a written reason for the pass or the failure.

03The verdict

The agent finds the UI. It never gets a vote on the verdict.

When an Auretis test passes, a real Playwright check passed, because you chose that check. Not "the AI thought it looked right."

23 assertion types, from presence to ARIA
each negatable, with Playwright's own parameters
0 LLMs in the verdict path

the full assertion enum

  • to_be_attached
  • to_be_visible
  • to_be_in_viewport
  • to_be_checked
  • to_be_disabled
  • to_be_editable
  • to_be_empty
  • to_be_enabled
  • to_be_focused
  • to_contain_class
  • to_contain_text
  • to_have_attribute
  • to_have_class
  • to_have_css
  • to_have_id
  • to_have_js_property
  • to_have_role
  • to_have_text
  • to_have_value
  • to_have_values
  • to_have_accessible_description
  • to_have_accessible_error_message
  • to_have_accessible_name

04Also shipped

Shipped today, not roadmap

reach

Drives pages selectors can't

The agent adapts to how each page is built, so it drives shadow-DOM and anti-bot pages that selector-only tools can't reach.

schedules

Regressions on a cron you set

Daily, weekdays, weekly, monthly, or any cron expression, in your timezone.

0 6 * * 1-5 · Europe/Warsaw

security

A firewall before the model

A fail-closed firewall screens every input for prompt injection before it reaches the model.

access control

Per-project RBAC

Role-based access with per-project membership, strict tenant isolation, and immutable audit trails.

05Early access

Auretis is in closed beta

Access is invite-only right now. Tell us what you test today and where the suite hurts, a short email is enough.