100% open source. No paid version.

E2E tests that actually work

BangOnIt! bangs on your app so you don't have to. Write tests in natural language, AI runs them just like a human would.

terminal
$ npx bangonit run \
    --plan "Log in as test@test.com / 123456,
           navigate to the billing page,
           and verify the charts look right"

BangOnIt! opened — watching test run...
> browser: navigate http://localhost:3000/login
> browser: type email, type password, click Sign in
> browser: navigate /billing
> browser: screenshot [verifying charts]

PASS All steps verified. (14.2s)
Recording saved to recordings/03-23T04-12Z/index.html

Works with any stack

Test plans are just plain markdown files. And the headless CLI can be called from test runners, CI pipelines, or AI coding agents like Claude Code.

Visual debugging and replay

Debugging E2E tests doesn't have to be terrible. Every test run can be recorded and played back as a single HTML file along with the logs and agent trace.

Fast

Batched browser actions, accessibility tree for navigation, optimized screenshots only when visual verification is needed. Run tests in parallel across multiple agents.

No flakes

The AI agent adapts to UI changes, loading states, animations, and layout shifts just like a human would, minimizing false negatives.

Start testing in 60 seconds

1

Init

One command sets up test plan directories, Claude Code skills, and GitHub Actions CI.

terminal
$ npm i -g bangonit
$ boi init

Created testplans/
Created .github/workflows/
Created .claude/skills/
2

Write

Describe your test in a markdown file. List the steps a human would take.

testplans/smoke/login.md
---
name: Login flow
---

## Steps
1. Go to /login
2. Type "user@test.com" in email
3. Type "password123" in password
4. Click "Sign in"
5. Verify the dashboard loads
3

Run

Run locally or push to trigger CI. Results post to your PR with links to session recordings.

terminal
$ boi run

ALL TESTS PASSED
+ Login flow (12.3s)

Recording saved to recordings/

First-class CI/CD support

Add BangOnIt! to your GitHub Actions workflow in minutes. Test results are posted as PR comments with links to interactive session recordings.

  • Runs on every PR automatically
  • Results posted as PR comments
  • Session recordings uploaded to S3
.github/workflows/e2e.yml
name: E2E Tests
on: [pull_request]

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - run: npm ci
      - run: npx bangonit
        env:
          ANTHROPIC_API_KEY: ${{ secrets.KEY }}

Under the hood

Hybrid browser understanding

Uses the accessibility tree for fast, text-based navigation. Switches to optimized screenshots when visual verification is needed. The right tool for each step, automatically.

Batched actions

Multiple browser actions are batched into a single LLM call for fewer round trips. Fewer API calls means faster tests and lower costs.

Custom Electron browser

A beautiful, purpose-built browser UI for watching tests run and debugging failures. Built on Electron with custom Chrome DevTools Protocol instrumentation.

Parallel test runner

Run multiple tests simultaneously, each with its own isolated browser tab and AI agent.

Self-contained recordings

Recordings are single HTML files. No SaaS subscription required. Open them in any browser, share them in Slack, host them on S3. They just work.

Stop writing tests.
Start describing them.

BangOnIt! turns your plain English test plans into fully automated E2E tests. No selectors. No page objects. No nonsense.