Framework Adapter
Same Gherkin spec → Playwright, Cypress, WebdriverIO, or Selenium output. Lets teams adopt the squad without re-platforming existing automation.
--framework cypress in the EVAN command linecypress/ folder, a playwright.config.ts)page.getByRole('button', { name: 'Submit' })cy.findByRole('button', { name: 'Submit' })$('button=Submit')await page.click(...)cy.click(...) (commands chain, no await)await element.click(...)await expect(locator).toHaveText('...')cy.contains('...').should('exist')await expect(element).toHaveText('...')playwright.config.ts, cypress.config.ts, wdio.conf.ts)@badeball/cypress-cucumber-preprocessor for Cypress)Converts Gherkin steps into Cucumber/TypeScript step definitions. Wires parameters, expression types, and shared world state automatically.
Inspects DOM (live or via spec) and emits typed Page Objects with stable selectors and high-level actions. Enforces single-responsibility per object.
Picks the most stable selector for a target element — role-based first, label-based next, test-id last. Avoids brittle CSS class chains.
Reads OpenAPI / GraphQL schemas and emits contract + integration tests. Handles auth, pagination, idempotency, and rate-limit assertions.
Synthesizes realistic test data — names, addresses, payment cards, medical records, account numbers — with deterministic seeds and PII safety.
Augments thin Gherkin Then-clauses with additional assertions: response codes, side-effects, audit log entries, downstream events.