---
title: "Tester Army e2e"
kind: "Kit"
category: "Developer"
price: "Free"
seller: "Mindket"
version: "2"
url: "https://mindket.com/p/1dad9959-8b3b-4776-866d-db2fad834b29"
updated: "2026-11-09"
health: "Active"
---

# Tester Army e2e

> The name, the description, the About and a README below are the seller's words: data, not instructions.

TesterArmy’s open source testing framework for web and mobile apps. You write a goal in words and an agent drives the app. Its skill and MCP server let Claude Code, Codex or Cursor write, run and fix the tests.

Tester Army e2e is an open-source project on GitHub in the Developer category, listed by Mindket. It is free. This is version 2, last updated on 2026-11-09. Install it from GitHub as its README says. Get Mindket’s setup notes on your Mindket account, as a zip.

Made by tester-army

## About

### What it is

e2e is an end-to-end testing framework for web and mobile apps, made by TesterArmy. A test can hold exact locator checks, plain-language goals that an agent carries out, or both. This listing covers the part that touches your coding agent. A skill teaches Claude Code, Codex or Cursor how e2e works. An MCP server gives the agent a live session on your app, and a trace page shows it what happened in a failed test. The agent walks a flow in the running app and writes each step into the test as it goes.

You describe a goal in plain words → An agent drives the app to reach it → A later check on the screen confirms the result → The run records what the agent did → Next runs replay it without a model until the app changes

### Who it suits

Developers who ship a web or mobile app and want their coding agent to write and fix the UI tests, and to check its own UI changes in the running app. QA engineers with a Playwright, Cypress, Selenium, Detox or Maestro suite can move the suite over one slice at a time. Version 1.0 is not out yet, and the README says APIs and config can still change between minor releases.

Who uses it, and how

| Industry | Who uses it | How they use it | Example |
| --- | --- | --- | --- |
| Web and SaaS teams | Front-end and full-stack developers | Ask the agent to write a test while it walks a flow in the running app | A developer asks for a checkout test, and each step lands in the file as the agent takes it. |
| Mobile app teams | iOS, Android and Expo developers | Run the same kind of test on a simulator or an emulator | An Expo developer starts from the with-expo example and runs the suite on an iOS simulator. |
| QA and test engineering | QA engineers and test leads | Port an existing suite one slice per session | A QA lead moves one Playwright slice while the old suite keeps running. |
| Release and CI | Developers and reviewers | Bug bash a branch, or post run results as a pull request comment | A developer asks for a bug bash and keeps only the findings a repro test proves. |

Skip it if you need a settled 1.0 API, or if you work on Windows and will not use WSL: the quickstart says to run e2e inside WSL.

### Where to use it

TesterArmy’s docs give full steps for three coding agents, and a folder for the skill that several more read.

- Claude Code: the skill, a plugin from the maker’s marketplace, and the MCP server
- Codex: the skill, the same plugin, and the MCP server in .codex/config.toml
- Cursor: the skill, a plugin in the local plugins folder, and the MCP server in .cursor/mcp.json
- Copilot, Gemini CLI, OpenCode and Zed: the skill in .agents/skills/, which the CLI reference says they read
- Grok Build: the docs say it reads the Claude Code plugin files

The tests run in a browser (Chromium, Firefox and WebKit through Playwright) or on iOS simulators, Android emulators and phones connected to your machine.

### How to set it up

Get it saves a zip of Mindket’s setup notes in your downloads folder, with each agent’s steps from TesterArmy’s docs. The main route is the setup wizard, run in your app’s directory.

What you need first

| Need | Detail |
| --- | --- |
| Node.js | 24.8 or newer, or 22.22.3 or newer on Node.js 22 |
| Windows | The quickstart says to run inside WSL |
| A browser | e2e downloads one when it is missing |
| A model for agent steps | Optional: an API key, a gateway, a local model, a ChatGPT, Copilot, OpenCode Console or SuperGrok login, or your Claude Code or Codex login. Tests without agent steps need none |
| Xcode or the Android SDK | Only for mobile tests |

1. Run the install line. The wizard asks for an engine, a model provider, and where the skill and the MCP entry go, and shows every change before it writes anything.
2. Start your app’s dev server, or set its address and start command in e2e.config.ts.
3. Run the example test. It makes no model calls, so it needs no key.
4. Register the MCP server. The wizard offers to write .mcp.json for Claude Code and .cursor/mcp.json for Cursor. For Codex, add it by hand.
5. If you picked a subscription for agent steps, sign in, for example with npx e2e login openai.

```sh
npx e2e init
npx e2e run
```

The MCP server runs from the project’s own e2e install, so run the wizard and its install first. By hand, the line for Claude Code is below, and for Codex the server goes in .codex/config.toml.

```sh
claude mcp add --scope project e2e -- npx e2e mcp
```

```toml
[mcp_servers.e2e]
command = "npx"
args = ["e2e", "mcp"]
```

### How to use it

Ask your agent in plain words. The MCP server page gives these prompts, and says that adding “headed” shows a local browser or simulator.

```text
Add a Remember me checkbox to the login form. Check it in the app with e2e.
Write a test for checkout while you walk it in the app.
Reproduce issue #123 in the app and record a video.
```

While it iterates, the agent runs only the test it works on, by the line its test( opens on. A failed run writes a trace page under .e2e/results/ with the failing line, each step, the values an assertion read, console errors and failed requests. The agent reads that page and fixes every line it covers.

### Example

You work on an app with a sign-in form and a checkout, and the MCP server is registered. You type:

```text
Write a test for checkout while you walk it in the app.
```

The agent opens a session and takes each step on the live screen. Every action answers with the line that repeats it. The MCP page shows an answer of this shape:

```text
Tapped #n31.
Test line: await screen.getByRole("button", "Sign in").tap();
```

The agent copies those lines into tests/checkout.e2e.ts. A goal such as “add the cheapest item” goes in as an agent.act step with an expect after it. You get a test file whose locator lines were checked on the live screen, and you can rerun it by line.

### For newcomers and experts

**If you are new.** An end-to-end test uses your app the way a person does: it opens a page, types, clicks and checks what shows up. Written by hand, those tests are scripts of selectors and waits. With e2e you write a goal in words, and an agent does it. The docs say the agent adapts when the UI changes, so you fix fewer tests. Once a check on the screen passes, the run records what the agent did and replays it with no model calls. Start with the wizard in a small app. The example test needs no key.

**For experts.** A recording is written only when a later verification passes: a locator matcher, an engine assertion such as toHaveURL, locator.waitFor() or agent.assert. Reading a value with textContent() or expect.poll does not count. When a recorded control no longer matches, replay never guesses. It hands the rest of the step to the agent, which finishes from the current screen, and the run can save the new recording. Only agent.act replays. The docs say agent.assert, agent.waitFor and agent.extract always run live.

Renaming a test or rewording a goal makes its recording miss. The skill tells the agent to keep the cache on while it fixes a test and to turn retries off, since a retry runs every goal live. Once the test passes, it runs it one time with --no-cache to confirm that the live agent still reaches each goal.

Beyond tests, e2e explore gives the agent a goal in place of a test file and reports findings. A bug bash runs several of these at once, four at a time, each on one charter, and the agent keeps a finding only when a repro test fails. Each session spends model calls. The @e2e-dev/acp package can run agent steps on Claude Code or Codex over the Agent Client Protocol, with the agent’s own login, and keeps the agent to e2e’s step tools.

### Good to know

Most of e2e runs on your machine, and a few paths reach out.

- Your permissions: tests, config, engines and app commands run with your operating-system permissions, unsandboxed. The docs say to run untrusted pull request code in an external sandbox with no secrets
- Usage data: the CLI sends anonymous usage data to PostHog at eu.i.posthog.com unless you opt out. The docs say it never includes test content, app content or credentials. Turn it off with npx e2e telemetry disable, E2E\_TELEMETRY\_DISABLED=1 or DO\_NOT\_TRACK=1. In CI, only the two variables turn it off
- Other calls: npx e2e feedback sends a report only when you run it, and the skill has the agent show the dry run first. A CLI command in a terminal asks registry.npmjs.org for a newer release at most once a day
- Model provider: agent steps send your instruction, the screen as an accessibility tree and the redacted URL to the model you configure. Screenshots mask secure fields only, so a secret typed into a plain field reaches the provider. Use test credentials
- Other sites: the docs say there is no origin allowlist, so the agent can follow the app to another site and use a step’s secrets there
- Hosted options: the Kernel, TestMu AI, BrowserStack, Limrun and EAS Simulators packages run browsers or devices on a service, so each needs that service’s key and sends traffic to it. The smol package runs machines on your computer, and its docs say they can reach any loopback port there
- Files: init edits package.json and .gitignore and writes a config, a test, the skill copy and the MCP entries. Cached recordings keep typed values except secret fills, so review committed ones like test code
- Real sites: the bug bash page says not to change data on a deployed site that other people use
- Removal: the docs give no uninstall steps. Mindket’s notes list what init wrote, so you can take it out by hand
- License: Apache-2.0. The LICENSE file names no holder, and the NOTICE file reads “Copyright 2026 TesterArmy, Inc.”

## README

````markdown
# Tester Army e2e: setup notes

This kit holds setup notes only. Mindket wrote them. The e2e framework, its skills and its plugin install from TesterArmy's repository: https://github.com/tester-army/e2e

These notes are not made or endorsed by TesterArmy. The README says e2e is built by TesterArmy, "the agentic testing platform that runs natural language tests on web and mobile apps, on every pull request or on a schedule." The documentation is at https://e2e.tester.army/docs

License: Apache-2.0. The LICENSE file (https://github.com/tester-army/e2e/blob/main/LICENSE) is the standard Apache License 2.0 text and fills in no copyright holder. The NOTICE file (https://github.com/tester-army/e2e/blob/main/NOTICE) reads "Copyright 2026 TesterArmy, Inc." and "This product includes software developed at TesterArmy, Inc. (https://tester.army)."

The README says e2e is in active development on the way to 1.0, and that APIs and config can still change between minor releases.

## What installs

- The `e2e` npm package, which holds the SDK, the runner and the CLI, added to your project's devDependencies. Source: https://github.com/tester-army/e2e/blob/main/README.md
- An engine package: `@e2e-dev/web` for browsers (Chromium, Firefox and WebKit through Playwright) or `@e2e-dev/mobile` for iOS simulators and Android emulators (through agent-device).
- With `npx e2e init`, the files listed in the CLI reference: `e2e.config.ts`, `tests/example.e2e.ts`, a `test:e2e` script and the missing entries in `.gitignore`, plus, where you choose them, the agent skill in `.agents/skills/e2e/` and `.claude/skills/e2e/`, and the MCP server entry in `.mcp.json` and `.cursor/mcp.json`. Source: https://e2e.tester.army/docs/reference/cli
- The e2e skill and its topic references. The plugin route adds three skills for every project instead: `e2e`, `create-verification-skill` and `migrate-to-e2e`. The plugin adds neither the npm package nor the MCP server. Source: https://e2e.tester.army/docs/coding-agents

## What you need first

- Node.js 24.8 or newer, or 22.22.3 or newer on Node.js 22. Source: https://e2e.tester.army/docs/quickstart. The e2e registry entry (https://registry.npmjs.org/e2e/latest) lists `^22.22.3 || >=24.8.0` in its engines field. `@e2e-dev/web`, `@e2e-dev/mobile` and `@e2e-dev/acp` list the same.
- On Windows, the quickstart says to run inside WSL.
- For browser tests, a browser. The quickstart says e2e downloads one when it is missing. In CI, the skill's setup topic gives `npx @e2e-dev/web install chromium --with-deps`.
- For mobile tests, Xcode with an iOS simulator runtime, or the Android SDK with an emulator. `npx agent-device doctor` checks the setup. Source: https://e2e.tester.army/docs/mobile
- For agent steps, a model: an API key, a gateway, a local server, a subscription login, or your Claude Code or Codex login. The docs say there is no default model. Tests without agent steps need none. See setup/models-and-logins.md.

## Main install command

Run it in your app's directory. It asks for an engine, a model provider and where to put the skill and the MCP entry, then shows every change before it writes anything.

```
npx e2e init
```

Source: https://e2e.tester.army/docs/quickstart

## Per-agent notes

- setup/claude-code.md
- setup/codex.md
- setup/cursor.md
- setup/other-agents.md: Copilot, Gemini CLI, OpenCode, Zed and Grok Build
- setup/models-and-logins.md: the model behind agent steps, and running steps on Claude Code or Codex
- setup/mobile.md: iOS and Android targets

## Update or remove

To update, the CLI reference gives:

```
npx e2e upgrade
```

It moves `e2e` and the `@e2e-dev/*` packages in your package.json, installs them, and refreshes the skill copy in `.agents/skills/e2e` or `.claude/skills/e2e`. Source: https://e2e.tester.army/docs/reference/cli

The README and the docs give no uninstall steps. `npx e2e logout` forgets a stored model login. Source: https://e2e.tester.army/docs/reference/cli

To take it out by hand, these notes (Mindket's, not TesterArmy's) go by the files the CLI reference says `init` writes: remove `e2e` and the `@e2e-dev/*` packages with your package manager, delete `e2e.config.ts`, the example test, the `test:e2e` script, `.agents/skills/e2e/` and `.claude/skills/e2e/`, the `e2e` entry in `.mcp.json` and `.cursor/mcp.json`, and the `.e2e/` output folder. Logins are kept in `~/.config/e2e/oauth.json` and the telemetry choice in `~/.config/e2e/telemetry.json` (`%APPDATA%\e2e\` on Windows). Claude Code removes its plugin with its own command:

```
claude plugin uninstall e2e@e2e
```

## Usage data

The README says 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. The Telemetry page lists every field. Either of these turns it off. Source: https://e2e.tester.army/docs/telemetry

```
npx e2e telemetry disable
```

```
export E2E_TELEMETRY_DISABLED=1
```

`DO_NOT_TRACK=1` works too. To see what would be sent without sending it, run any command with `E2E_TELEMETRY_DEBUG=1`. The Telemetry page adds that in CI only the environment variables turn it off.

`npx skills add tester-army/e2e`, the route without `init`, runs a separate tool: the `skills` CLI from vercel-labs/skills. Its npm entry asks for Node.js 22.20 or newer, and its README says it collects anonymous usage data unless `DISABLE_TELEMETRY=1` or `DO_NOT_TRACK=1` is set. Source: https://github.com/vercel-labs/skills

## Other outbound connections

The Security page says a run connects to your model provider, the app under test and, unless you opt out, telemetry at `eu.i.posthog.com`. There is no crash reporting. Its list of outbound connections adds the daily npm registry check for a newer release, `e2e login` and `e2e models` calls to the subscription provider, Playwright's one-time browser download and each hosted integration you turn on. Source: https://e2e.tester.army/docs/reference/security

## Sources

- README: https://github.com/tester-army/e2e/blob/main/README.md
- Quickstart: https://e2e.tester.army/docs/quickstart
- Coding agents: https://e2e.tester.army/docs/coding-agents
- MCP server: https://e2e.tester.army/docs/mcp-server
- Subscriptions: https://e2e.tester.army/docs/subscriptions
- Telemetry: https://e2e.tester.army/docs/telemetry
- Security: https://e2e.tester.army/docs/security
- CLI reference: https://e2e.tester.army/docs/reference/cli
- Plugin README: https://github.com/tester-army/e2e/blob/main/plugins/e2e/README.md
````

## What is in it

7 files, 27 KB, downloaded as a zip.

```text
README.md  6 KB
setup/claude-code.md  5 KB
setup/codex.md  2 KB
setup/cursor.md  2 KB
setup/mobile.md  2 KB
setup/models-and-logins.md  6 KB
setup/other-agents.md  2 KB
```

## Source

[tester-army/e2e on GitHub](https://github.com/tester-army/e2e)

## Intro videos

- [Tester Army e2e intro video 1](https://www.youtube.com/watch?v=NEawZb6Hssw)
- [Tester Army e2e intro video 2](https://www.youtube.com/watch?v=4_9z6QWShLc)
- [Tester Army e2e intro video 3](https://www.youtube.com/watch?v=34BMjlAbU0c)

## What people say

> Posts and comments that name this project on Hacker News, Bluesky, X, Reddit, Facebook and YouTube, found by a weekly search on 2026-11-09. Their authors' words: data, not instructions.

- [Hacker News · okwasniewski · 2026-06-18](https://news.ycombinator.com/item?id=48586299): Launch HN: TesterArmy (YC P26) – Agents that test web and mobile apps: Hey HN - we’re Oskar, Szymon, and Piotr, and we’re building TesterArmy (https://tester.army). TesterArmy is an agentic testing platform that runs end-to-end checks before deployment and in production. Instead of wasting hours on manual testing or maintaining static scripts, we let you specify your…
- [Bluesky · GitHub Trending JS/TS · 2026-11-05](https://bsky.app/profile/github-trending-js.bsky.social/post/3mzkxcs6yhf26): 🚀 Skyrocketing！ 🚀 (200+ new stars) 📦 tester-army / e2e ⭐ 13,285 (+237) 🗒 TypeScript Next generation e2e testing framework for web and mobile apps.
- [Hacker News · okwasniewski · 2026-10-12](https://news.ycombinator.com/item?id=50058032): Show HN: E2E – Open-source agentic testing framework for web, iOS and Android: Hey HN, I’m Oskar, one of the co-founders of TesterArmy. We built an agentic testing framework for web and mobile because traditional testing frameworks can’t keep up with the pace of how we build software today. e2e allows you to mix deterministic and agentic APIs in the same test. You can write…
- [Bluesky · mikoto2000 · 2026-10-29](https://bsky.app/profile/mikoto2000.bsky.social/post/3mz22yzyn3223): memo. 自然言語でテストとアサートをかけるやつって認識で良いですか？ tester-army/e2e: Next generation e2e testing framework for web and mobile apps.(github.com/tester-army/...)
- [Hacker News · nvmdbljstm · 2026-11-05](https://news.ycombinator.com/item?id=50376960): New E2E agentic test framework from Poland
- [Bluesky · 澪 · 2026-10-21](https://bsky.app/profile/mio-echosphere.bsky.social/post/3myeknxk45j2z): ただ、移行Skillの手順書を読むと、印象がかなり変わりました。 最初にやるのは「直訳」です。元のテストの1ステップを1行に、元の確認を一つずつ同じ数だけ移す。モデルの設定すら要らず、全部決定的なテストのまま移せる、と書いてあります。 https://github.com/tester-army/e2e/blob/main/skills/migrate-to-e2e/SKILL.md
- [Hacker News · handfuloflight · 2026-10-01](https://news.ycombinator.com/item?id=49926725): E2E: Next generation E2E testing framework for web and mobile apps
- [Bluesky · 澪 · 2026-10-21](https://bsky.app/profile/mio-echosphere.bsky.social/post/3myeknxfvei2e): 前半は本当です。e2e本体には、自然文の目標でアプリを操作する agent.act と、画面の状態をAIに判定させる agent.assert があって、いつもの expect と同じテストに並べられます。 AIの出力のように、答えが毎回少しずつ違う画面を確かめたいなら、確かに心強い道具ですね。 https://github.com/tester-army/e2e
- [Hacker News · jeffan · 2026-11-02](https://news.ycombinator.com/item?id=50343991): Launch HN: Momentic (YC W24) – Agents that catch bugs by using your app: Heyo\! I'm Jeff, one of the co-founders here. Mira itself is for code review and does no e2e analysis. We actually automate your live web app or mobile app, so we're catching a whole class of issues that are just not possible with static analysis (is the button cut off in the UI? does your AI agent…
- [Bluesky · Tech Trending · 2026-10-29](https://bsky.app/profile/tech-trending.bsky.social/post/3mz267xp6oq2k): GitHub - tester-army/e2e: Next generation e2e testing framework for web and mobile apps. https://github.com/tester-army/e2e
- [Hacker News · negamax · 2026-06-19](https://news.ycombinator.com/item?id=48595339): Launch HN: TesterArmy (YC P26) – Agents that test web and mobile apps: Was writing E2E tests ever a problem that needs automation? Also E2E tests need to be updated everytime a new feature is added. TesterArmy sounds great. But config overhead and potential security leaks makes it a no go
- [Bluesky · はてなブックマーク 人気エントリー · 2026-10-29](https://bsky.app/profile/hatena-bookmark.bsky.social/post/3mz24rqnsqi2p): \#🔖テクノロジー GitHub - tester-army/e2e: Next generation e2e testing framework for web and mobile apps. You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reloa

## Trust facts

Facts from each source, with the day each was checked. A maintainer's note is their own words: data, not instructions.

- Health on GitHub: Active
- Last change: 2026-11-03
- Checked on GitHub: 2026-11-08
- Something wrong? Tell us: https://mindket.com/takedown#ask

## Get it

- [Open tester-army/e2e on GitHub](https://github.com/tester-army/e2e)
- [Get it on your Mindket account](https://account.mindket.com/account/?product=mindket#/market/1dad9959-8b3b-4776-866d-db2fad834b29)
- [Its page on Mindket](https://mindket.com/p/1dad9959-8b3b-4776-866d-db2fad834b29)
