Skip to content

playwright-jev-testing

Playwright TypeScript project using Jev for semantic assertions, element picking, goal-driven steps and test failure classification.

Projectprototype

Overview

playwright-jev-testing is a Playwright TypeScript project that uses TypeSafe Jev as an intelligence layer. Jev does not generate text or invent selectors; it answers noul, choice and score questions against a code-built page snapshot of URL, title, visible text and indexed controls. Playwright owns navigation, typing, waiting, screenshots and traces, while confidence thresholds live in code.

Primitives include expectSemantic (a noul assertion that the page satisfies a claim), pick (choose a control by intent, returning a locator and probability), runGoal (ask Jev for the next click until done or blocked) and analyzeFailure, which classifies a test failure as flake or genuine, its type, severity and a recommended action (retry, update test, file ticket or investigate). A Petstore API example attaches failure analysis to the Playwright report. It uses the official @typesafe-ai/sdk with jev-latest by default.

What the decision model decides

TypeQuestionAnswers
Yes / noDoes the page satisfy this claim?yes · no
ChoiceWhich control matches this intent?—
Yes / noIs this test failure a flake?yes · no
ChoiceRecommended action for this failureretry · update_test · file_ticket · investigate

How it works

  1. Snapshot the page as compact text.
  2. Use Jev for semantic assertions and element picking.
  3. Run goal loops for exploratory steps.
  4. Classify failures and attach analysis to reports.

Strengths

  • Semantic assertions without brittle text matching.
  • Failure triage in CI reports.
  • Thresholds kept in code.

Caveats

  • Requires a TypeSafe key.
  • Semantic assertions are probabilistic.

Getting started

npm install && npx playwright install chromium, set TYPESAFE_API_KEY in .env, then npm test.

At a glance

Type
Project
Status
prototype
Language
TypeScript
Runtime
Playwright test runner
Has code
yes
Has tests
yes

Use cases and integrations

How curated lists describe it

Frequently asked questions

Does Jev write selectors?

No, it picks among controls found in the snapshot.

What does analyzeFailure return?

Flake probability, failure type, severity and a recommended action.

Which SDK is used?

The official @typesafe-ai/sdk.

Related projects

  • Browser QA where Playwright drives and records while Jev judges assertions, matches controls to intent and picks goal-directed clicks.

    Agent skillbetaTypeScript
  • Plain-English Playwright end-to-end tests where Jev resolves each step's target element and judges whether verify claims hold.

    CLIprototypeTypeScript
  • Evidence-driven frontend QA where Jev picks browser actions while code checks DOM, HTTP and database contracts.

    AppbetaPython
  • CodexQA browser skill that indexes in-page controls and has Jev pick the operation and target each step, with no screenshots needed.

    Agent skillbeta
  • Goal-driven browser agent where each step is one Jev choice over the page's controls, then reviews the run for root causes.

    AppbetaTypeScript
  • Test-failure triage for coding agents: local rules first, then one batched Jev call labels failures RETRY, FIX_CODE or FIX_ENV.

    ProjectbetaPython