Skip to content

jevcumber

Cucumber runner where Jev resolves each Gherkin step against the live page and Playwright executes it, so tests need only the .feature file.

Projectbeta

Overview

jevcumber lets you write Cucumber tests with just the .feature file and no step definitions. It opens your site in a real browser with Playwright and, for each Gherkin step, asks Jev what the step means on the page in front of it. Jev never writes code or invents values: jevcumber lists what is actually there (the page's buttons, fields and links, plus the literal values quoted in your step) and Jev picks among them. For a step like when I search for bagel, one request of about a second asks what kind of action it is (fill), which control (Search Wikipedia), which literal is the text (bagel) and whether to type only or type and submit (submit).

Every answer comes with a probability, and if Jev is not confident, below 0.6 in the example, jevcumber refuses to guess and reports the candidates it was torn between. A frozen mode is shown in the example run. It is published on npm, has CI, is available as an agent skill, and has a website with a demo video.

What the decision model decides

TypeQuestionAnswers
ChoiceWhat kind of action is this step (fill, click, assert, navigate...)?—
ChoiceWhich on-page control does the step refer to?—
ChoiceWhich quoted literal is the text to type?—
ChoiceType only, or type and submit?type · submit

How it works

  1. Open the site with Playwright
  2. For each step, list page controls and literals
  3. One Jev request answers action, target, value and submit questions
  4. Execute if confident (>= 0.6), else refuse and show candidates

Strengths

  • No step definition glue code
  • Refuses to guess on ambiguity
  • About a second per step per the README

Caveats

  • Requires a TypeSafe key
  • Ambiguous wording leads to refusals

Getting started

npx jevcumber examples/ (install from npm; set TYPESAFE_API_KEY).

At a glance

Type
Project
Status
beta
Language
TypeScript
Runtime
Node + Playwright
Has code
yes
Has tests
yes

Use cases and integrations

How curated lists describe it

  • Write Cucumber tests with just the .feature file. No step definitions — Jev (TypeSafe AI) resolves each Gherkin step and Playwright runs it.

    hellogumbo/awesome-jev

Frequently asked questions

Do I need step definitions?

No, Jev resolves each step against the page's actual controls and your step's literals.

Can Jev invent values to type?

No, it only picks among literals quoted in your step.

What if a step is ambiguous?

Below the confidence threshold it refuses and lists the candidates.

Related projects

  • 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
  • Chinese UI test framework where Jev scores candidate page elements for each step of a natural-language test case.

    ProjectbetaPython
  • Browser tests written as user steps: Jev finds each control once, the path is recorded, and replays run without the model.

    ProjectbetaTypeScript
  • Community runner for Midscene Test adding jevAct, jevAssert and jevWaitFor nodes that use Jev over a bounded, non-text action space.

    PluginbetaTypeScript
  • Node CLI for goal-driven E2E tests: Jev picks the next step from a code-generated action space, playwright-cli executes, code asserts.

    CLIbetaJavaScript