AssertAssert
AI‑first test automation

You write scenarios.
We write the tests.

From Markdown and a single assert.config.json to runnable Playwright with selectors, assertions, screenshots, and dashboard results.

scenario.md
URL: https://myapp.example.com
SCENARIO: Create a new support ticket
PROCESS:
  - Click "New Ticket" in "page-header"
  - Wait for "Create New Ticket" in dialog
  - Fill "email" with "hi@example.com"
  - Fill "subject" with "This is an E2E test"
  - Fill "body" with "Test email body"
EXPECT: Create New Ticket dialog with subject and body filled
Markdown → Playwrightready

Plain‑English Markdown in, assert out.

Works with your stack

Test any framework. Run in any pipeline.

ReactReact
VueVue
AngularAngular
Next.jsNext.js
NuxtNuxt
SvelteSvelte
RemixRemix
AstroAstro
LaravelLaravel
ReactReact
VueVue
AngularAngular
Next.jsNext.js
NuxtNuxt
SvelteSvelte
RemixRemix
AstroAstro
LaravelLaravel
ReactReact
VueVue
AngularAngular
Next.jsNext.js
NuxtNuxt
SvelteSvelte
RemixRemix
AstroAstro
LaravelLaravel
GitHubGitHub
GitLabGitLab
BitbucketBitbucket
CircleCICircleCI
JenkinsJenkins
VercelVercel
NetlifyNetlify
DockerDocker
GitHubGitHub
GitLabGitLab
BitbucketBitbucket
CircleCICircleCI
JenkinsJenkins
VercelVercel
NetlifyNetlify
DockerDocker
GitHubGitHub
GitLabGitLab
BitbucketBitbucket
CircleCICircleCI
JenkinsJenkins
VercelVercel
NetlifyNetlify
DockerDocker

Why Assert

Replace Manual QA.
Automate Everything.

Automate critical user journeys with Markdown scenarios, one small config file, and no Playwright plumbing.

AI‑Powered Automation

Turn simple Markdown into full Playwright E2E tests instantly. No Playwright boilerplate required.

Faster Release Cycles

Catch bugs earlier and ship confidently with automated tests running on every commit.

Runs on Your Infrastructure

Run tests locally, in CI, or through an optional queued runner on your own infrastructure. Your browsers stay on your side.

Cost & Time Savings

Reduce or eliminate manual QA staffing needs while cutting regression testing time dramatically.

Simple Maintenance

Update tests in plain English when UI changes — AI adapts and keeps scripts resilient.

Dashboards & Insights

Track results with visual dashboards, failure logs, and performance stats all in one place.

How It Works

From Markdown to results
in four steps.

01
1

Describe

Add an assert.config.json file and write plain-English Markdown scenarios in your repo.

  • One small config file per codebase.
  • No Playwright boilerplate or selector plumbing.
02
2

Generate

AI translates your steps into full Playwright code with smart selectors, assertions, and waits.

  • Robust selectors — roles, labels, data‑assert.
  • Retries, screenshots, and timeouts baked in.
03
3

Run

Run assert locally or in CI. Keep assert-runner online only if you want queued jobs picked up automatically.

  • Runs on your hardware using your own browsers.
  • Results and screenshots stream back to the Assert dashboard.
04
4

Track

Dashboards track reliability over time — spot flakiness, see trends, and catch regressions early.

  • Pass/fail rate, duration, and flakiness score.
  • Full step‑by‑step logs and screenshots on failure.

MCP Server

Run tests from your
AI coding agent.

Assert ships an MCP server. Point it at the same assert.config.json your repo uses and your AI client can write, run, and inspect tests without leaving the chat.

assert_list

List

Audit your existing test coverage before adding more.

assert_generate

Generate

Describe what to test in plain English — get a ready-to-run scenario back.

assert_run

Run

Execute a saved scenario or fire off an ad-hoc test without saving first.

assert_status

Status

Poll for step-level pass/fail results with failure details and screenshot URLs.

Pick your client and point it at your repo config. No separate Assert setup is needed inside the editor.

~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "assert": {
      "command": "npx",
      "args": ["-y", "@assert-click/mcp"],
      "env": {
        "ASSERT_CONFIG": "/absolute/path/to/assert.config.json"
      }
    }
  }
}
  1. 1

    Create a project, save its login details if needed, and add assert.config.json to the repo.

  2. 2

    Pick your client above, copy the MCP snippet, and point ASSERT_CONFIG at that repo config file.

  3. 3

    Restart your client and ask: "Generate an Assert scenario for checkout, save it, run it, and show me the failing step if it breaks."

  4. Get Started Free

Impact

Measurable results,
from day one.

Save time and money while raising quality across your apps and sites.

Lower costs

Cut expensive manual QA and avoid costly production bugs — save thousands per month.

Higher quality

Catch issues before release. Reduce downtime, incidents, and customer churn.

Ease of use

Write tests in plain English Markdown. No framework expertise needed.

For the whole team

PMs, QA, and developers can all contribute scenarios and collaborate easily.

The cost of inaction

Poor software quality has a measurable financial impact.

Cost of poor quality

$2.41Tper year

U.S. economic impact from poor software quality. Consortium for Information and Software Quality (CISQ), 2022.

Prod bug expense

4–5×higher

Cost of fixing defects found in production vs. earlier in the cycle. IBM Systems Sciences Institute.

Downtime cost

$5,600/ min

Average cost of IT downtime per minute — large enterprises can be significantly higher. Gartner, 2014.

Customer churn

32%leave

Customers who stop doing business with a brand after a single bad experience. PwC, 2018.

Who It's For

Built for every
team.

Agencies

Reusable test packs across clients, faster hand‑offs, less manual QA. Bill more work, fix fewer bugs.

Indie & product teams

Automate E2E in days, not months. Catch regressions per PR and ship features safely.

Enterprises

High‑volume runs, priority support, SLAs, and hands-on onboarding for your team.

Scenarios

What does the Markdown
look like?

Each test is a plain text file. Add one small repo config, describe what a user does, and Assert handles the Playwright side.

That's it. No YAML, no JavaScript test boilerplate, and just one small assert.config.json. Try it free →

Resources

Evergreen pages built around
the problems Assert solves.

Practical guides, comparisons, and examples for teams dealing with brittle Playwright suites, UI churn, AI-assisted test generation, and repo-native test ownership.

Guides

Evergreen guides on end-to-end testing, Playwright maintenance, AI-assisted test generation, and Markdown-based workflows.

Comparisons

Understand how Assert compares to raw Playwright and codeless testing tools for real-world team workflows.

Examples

Realistic examples of login, checkout, and support-ticket flows written in Assert's Markdown-first testing workflow.

Get Started

Stop wasting time
on manual QA.

Automate full end-to-end tests with AI in minutes — save costs, ship faster, and sleep better.

Free tier included. No credit card required.

No credit card requiredFree tier foreverRuns on your infrastructureCancel anytime