JevTest
TypeScript library and CLI for exploratory browser testing where Jev chooses actions and judges results and Playwright executes them.
Overview
JevTest is a local TypeScript library and CLI for bounded exploratory browser testing. You supply a goal, fixture data, the available actions and exact success assertions; Jev chooses actions and judges observed results, while Playwright executes them in isolated browser sessions and saves replayable evidence. Outcomes are passed, failed or incomplete, with deterministic assertions deciding pass and fail.
A demo starts a local shop, runs 12 labelled flows with six deliberately planted bugs, replays every trace and writes an HTML report and metrics. The live demo uses a shared 250,000-token budget and at most 80 requests; ordinary tests, discovery, the baseline policy and replay make no model calls. Config files are trusted executable code, and the README reminds users that browser isolation does not isolate a shared database. Status is an initial working implementation; licensing terms are pending, no usage licence is granted yet and package publishing is disabled.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Choice | Which available action should be taken next toward the goal? | — |
| Yes / no | Does the observed result satisfy the step or goal? | — |
How it works
- Configure start URL, fixtures, actions and deterministic checks
- Jev chooses each action; Playwright executes it in an isolated context
- Jev judges observed results; assertions decide pass or fail
- Token and request budgets bound each run
- Traces can be replayed without model calls
Strengths
- Deterministic assertions keep pass/fail objective
- Replayable evidence and HTML reports
- Explicit API budgets
Caveats
- No usage licence granted yet
- Initial implementation
- Requires Node 24, pnpm 11 and a TypeSafe key for live runs
Getting started
pnpm install && pnpm browser:install && pnpm verify && pnpm demo (set TYPESAFE_API_KEY and run pnpm demo:live for Jev).At a glance
- Type
- Project
- Status
- prototype
- Language
- TypeScript
- Runtime
- Node CLI with Playwright
- Has code
- yes
- Has tests
- yes
Use cases and integrations
How curated lists describe it
Bounded exploratory browser testing with Jev, deterministic assertions, and replayable evidence.
hellogumbo/awesome-jev
Frequently asked questions
What does Jev decide?
Which action to take next and whether observed results match the goal; exact assertions decide pass or fail.
Can I use it in my project?
The source is public but no usage licence has been granted yet.
Does replay call the API?
No, replay, discovery and the baseline make no model calls.
Related projects
Goal-driven browser agent where each step is one Jev choice over the page's controls, then reviews the run for root causes.
AppbetaTypeScriptBrowser agent with no LLM: code enumerates options from the page and goal, and Jev only picks actions, values and when to stop.
ProjectprototypePythonCodexQA browser skill that indexes in-page controls and has Jev pick the operation and target each step, with no screenshots needed.
Agent skillbetaChinese UI test framework where Jev scores candidate page elements for each step of a natural-language test case.
ProjectbetaPythonCucumber runner where Jev resolves each Gherkin step against the live page and Playwright executes it, so tests need only the .feature file.
ProjectbetaTypeScriptFlutter integration-test package where Jev picks the next registered UI action and judges whether the test goal is reached.
LibrarybetaDart