Show HN: E2E – Open-source agentic testing framework for web, iOS and Android
github.comHey 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 the test cases using familiar APIs like `getByText()`or `getByTestId()` which you can also mix it with agentic `agent.act()`. The unique part about it is that e2e will cache and replay the agentic actions so you don’t have to pay for AI on each run. You can use it with any LLM, including subscriptions you are already paying for.
On top of that, the core of e2e is platform agnostic. We ship both web and mobile engines out of the box; adding support for more platforms is pretty straightforward.
Here’s a code short code snippet of an example test:
```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');}); ```
Try it: npx e2e init
Why this instead of Gherkin+Cucumber and having an agent write the step definitions?
I've been personally using this and it's greatly improved testing and finding edge cases