QA Automation

AI QA Automation You Actually Own

In 10 minutes you will go from zero test coverage to a full Playwright suite generated by AI, running in CI, with every line of code under your control.

Before you start

  • Node.js 18+ installed
  • A running web app (localhost or staging URL)
  • npx available in your terminal
  • A CI pipeline (GitHub Actions, GitLab CI, or similar)

1. Install Assrt and Playwright

Assrt generates standard Playwright tests. Install both in one command. No account creation, no API keys, no cloud dependency.

terminal

2. Point AI at Your App

Give Assrt a URL. It crawls your app, identifies user flows (login, checkout, search, form submissions), and generates a test plan. No selectors to write. No page objects to maintain.

terminal

3. Generate Playwright Tests

Accept the plan and Assrt writes real TypeScript test files. These are standard Playwright tests, not a proprietary format. Open them in your editor, read them, modify them, commit them.

terminal

4. Inspect the Generated Code

Every generated test is readable TypeScript. No abstraction layers, no proprietary runners, no YAML. Here is what a generated login test looks like:

tests/login-dashboard.spec.ts

Notice the use of role-based and label-based selectors. These are more resilient to UI changes than CSS selectors or XPaths, because they target what the user sees rather than internal DOM structure.

5. Run the Suite Locally

Run the tests with the standard Playwright CLI. No special runner needed.

terminal
Test results

6. Add Tests to CI

Since the tests are plain Playwright files, they plug into any CI system. Here is a GitHub Actions workflow that runs them on every pull request:

.github/workflows/e2e.yml

7. Regenerate When the App Changes

When you ship a new feature, rerun the generator. Assrt diffs the existing test files against the new app state and updates only what changed. Your manual edits are preserved.

terminal

The --update flag is the key to long-term maintenance. Instead of regenerating everything, Assrt keeps your existing tests stable and only touches what the app changes require.

Why AI QA Automation Matters Now

Manual test writing does not scale. A mid-size SaaS application has hundreds of user flows, and each one needs tests for happy paths, error states, edge cases, and cross-browser behavior. QA teams that write tests by hand fall behind within weeks of a product launch.

AI QA automation changes the economics. Instead of spending 40+ hours writing a test suite, you point a tool at your running app and get working tests in minutes. The question is what you get back.

Most AI QA tools generate proprietary test definitions: YAML configs, visual recordings, or platform-specific scripts that only run inside the vendor's cloud. If you cancel your $7,500/month contract, your tests disappear. You cannot run them locally. You cannot read them in a code review. You cannot extend them with custom logic.

Assrt takes a different approach: the output is standard Playwright TypeScript. You commit the tests to your repo. You run them withnpx playwright test. You own them completely.

What to Look for in an AI QA Tool

Not all AI QA automation tools are built the same. Here are the questions that matter when evaluating options:

QuestionRed flagGreen flag
What format are the tests?Proprietary YAML or visual recordingsStandard Playwright/Cypress code
Can I run tests locally?Cloud execution onlyLocal + CI + cloud all supported
What happens if I cancel?Tests stop runningTests are yours, keep running forever
Can I edit generated tests?Limited to the platform UIFull code access in any editor
What does it cost?$5K to $15K per monthFree and open-source

Patterns AI QA Catches That Manual Testing Misses

AI crawlers interact with your app the way a real user would, which means they discover flows that developers often skip when writing tests by hand:

  • Cross-flow state leaks. Completing a checkout flow, then navigating to settings, then back to the cart. Does the cart remember its state?
  • Tab and keyboard navigation. Can a user complete the signup form using only the keyboard? AI tools test this because they interact with accessibility roles, not coordinates.
  • Error recovery paths. What happens when a network request fails mid-form-submission? AI generators create tests for these scenarios because they observe all network activity during crawling.
  • Viewport breakpoints. Mobile layouts that hide navigation behind a hamburger menu. AI tools generate separate test paths for each viewport size.

Generate your test suite now

Assrt is free, open-source, and self-hosted. Run npx assrt generate against your app and get real Playwright tests in minutes.

Get Started

Troubleshooting Common Issues

A few things that can trip up first-time setup:

Tests fail because the app is not ready

In CI, the dev server may not be fully started when tests begin. Use npx wait-on http://localhost:3000before running tests, or configure Playwright'swebServer option inplaywright.config.ts:

playwright.config.ts

Generated selectors do not match

If your app does not use semantic HTML (buttons without labels, divs instead of links), the AI will fall back to less stable selectors. Fix the accessibility of your app and regenerate. This improves both test stability and the experience for users with assistive technology.

Authentication-gated flows

For apps that require login, provide test credentials via environment variables. Assrt uses them to authenticate before crawling protected routes:

terminal

Assrt is open-source and free. Run npx assrt generate against your app to get started.