tester-army/e2e

Next generation e2e testing framework for web and mobile apps.

TypeScript

51

536 commits

updated Oct 1, 2026

See the code

See what people are saying

README

e2e, the open source AI testing framework by TesterArmy

Made by TesterArmy npm version License: Apache-2.0 Join the community on Discord

e2e

e2e is an end-to-end testing framework for web and mobile apps. Describe a goal in natural language and an agent drives the app to reach it. Check the result with locators and assertions in the same test.

// tests/checkout.e2e.ts
import { test, expect } from 'e2e';

test('a member upgrades to Pro', async ({ app, agent, screen }) => {
  await app.open('/settings/billing');

  await agent.act('upgrade the workspace to the Pro plan');
  await agent.assert('the invoice preview shows a prorated amount');

  await expect(screen.getByRole('status')).toContainText('Pro');
});

An agent step that a later assertion verifies records its actions, and the next run replays them with no model calls until the app changes. Tests without agent steps need no model. Bring your own subscription, API key, or local model.

Quick start

npx e2e init

init asks for an engine, web or mobile, and a model provider, then writes a config and an example test. The quickstart covers the rest.

Packages

PackageWhat it does
e2eThe SDK, runner, and CLI.
@e2e-dev/webBrowser engine: Chromium, Firefox, and WebKit through Playwright.
@e2e-dev/mobileiOS and Android engine: simulators and emulators through agent-device.
@e2e-dev/githubReporter that posts results as a pull request comment.
@e2e-dev/kernelKernel hosted browsers for the web engine.
@e2e-dev/easEAS Simulators hosted iOS simulators and Android emulators for the mobile engine.

Documentation

e2e.tester.army/docs. The e2e package ships every page, so coding agents can read them offline in node_modules/e2e/docs.

Contributing

See CONTRIBUTING.md. Questions go to Discord.

Security

Please don't open public issues for security vulnerabilities. Follow SECURITY.md and report them to security@tester.army.

Telemetry

The CLI sends anonymous usage data, such as which commands and engines run and where runs fail, but no test content, app content, or credentials. Opt out with npx e2e telemetry disable or E2E_TELEMETRY_DISABLED=1. Telemetry lists every field.

Status

[!NOTE] e2e is in active development on the way to 1.0. APIs and config can still change between minor releases.

Made by TesterArmy

e2e is built by TesterArmy, the agentic testing platform that runs plain-language tests on web and mobile apps, on every pull request or on a schedule.

Apache-2.0.

e2e
e2e-testing
end-to-end-testing
mobile
mobile-testing
playwright
web

tester-army/e2e

Next generation e2e testing framework for web and mobile apps.

TypeScript

51

536 commits

updated Oct 1, 2026

See the code

See what people are saying

README

e2e, the open source AI testing framework by TesterArmy

Made by TesterArmy npm version License: Apache-2.0 Join the community on Discord

e2e

e2e is an end-to-end testing framework for web and mobile apps. Describe a goal in natural language and an agent drives the app to reach it. Check the result with locators and assertions in the same test.

// tests/checkout.e2e.ts
import { test, expect } from 'e2e';

test('a member upgrades to Pro', async ({ app, agent, screen }) => {
  await app.open('/settings/billing');

  await agent.act('upgrade the workspace to the Pro plan');
  await agent.assert('the invoice preview shows a prorated amount');

  await expect(screen.getByRole('status')).toContainText('Pro');
});

An agent step that a later assertion verifies records its actions, and the next run replays them with no model calls until the app changes. Tests without agent steps need no model. Bring your own subscription, API key, or local model.

Quick start

npx e2e init

init asks for an engine, web or mobile, and a model provider, then writes a config and an example test. The quickstart covers the rest.

Packages

PackageWhat it does
e2eThe SDK, runner, and CLI.
@e2e-dev/webBrowser engine: Chromium, Firefox, and WebKit through Playwright.
@e2e-dev/mobileiOS and Android engine: simulators and emulators through agent-device.
@e2e-dev/githubReporter that posts results as a pull request comment.
@e2e-dev/kernelKernel hosted browsers for the web engine.
@e2e-dev/easEAS Simulators hosted iOS simulators and Android emulators for the mobile engine.

Documentation

e2e.tester.army/docs. The e2e package ships every page, so coding agents can read them offline in node_modules/e2e/docs.

Contributing

See CONTRIBUTING.md. Questions go to Discord.

Security

Please don't open public issues for security vulnerabilities. Follow SECURITY.md and report them to security@tester.army.

Telemetry

The CLI sends anonymous usage data, such as which commands and engines run and where runs fail, but no test content, app content, or credentials. Opt out with npx e2e telemetry disable or E2E_TELEMETRY_DISABLED=1. Telemetry lists every field.

Status

[!NOTE] e2e is in active development on the way to 1.0. APIs and config can still change between minor releases.

Made by TesterArmy

e2e is built by TesterArmy, the agentic testing platform that runs plain-language tests on web and mobile apps, on every pull request or on a schedule.

Apache-2.0.

e2e
e2e-testing
end-to-end-testing
mobile
mobile-testing
playwright
web

Languages

TypeScript

98.2%

JavaScript

1.7%