Convert Karate (JVM API + UI testing DSL) suites — `.feature` files using Karate's Gherkin-superset DSL with built-in HTTP / UI primitives (no step definitions), `karate-config.js`, `karate.callonce` / `karate.call` feature reuse, `background` blocks, `* def` variables, `Given url / When method / Then status / And match` verbs, `match` deep-equal/contains/regex/schema, `configure` directives, JSON/XML/YAML/GraphQL payloads, `read()` fixtures, parallel JUnit 5 runner, UI layer (`driver`, `click`, `input`, `waitFor`, `screenshot`), embedded JS/Java via `Java.type()`, Scenario Outline with `Examples`, Maven/Gradle wiring. Targets: Selenium, Playwright, Cypress, Cucumber, Appium, Eggplant, OpenTest.AI, Testers.AI. MANDATORY TRIGGERS: "convert Karate", "Karate to <target>", "karate.call", "karate-config", "Given url", "And match".
Installation
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Converts Karate (JVM API + UI testing DSL) suites to any supported target, and emits Karate from any source.
Karate is unusual among BDD tools: it has no step-definitions layer. The .feature file itself is the test code — Karate provides a fixed DSL vocabulary (Given url, When method, Then match, And def, etc.) that interprets Gherkin directly. This means extraction reads meaning straight from the feature file without cross-referencing step definition classes.
When to use
Trigger when:
com.intuit.karate:karate-junit5 / karate-junit4 / karate-apache / karate-core as Maven/Gradle dependencies.
karate-config.js in src/test/java or src/test/resources.
.feature files using Karate's DSL verbs: Given url, Given path, When method POST, Then status 200, Then match response == {...}, And def var = ..., * def ..., configure, call, callonce, read(...).
logback-test.xml at test resources root (Karate's logging convention).
karate.options system property set in build config.
Test runner classes containing @Karate.Test annotations (JUnit 5) or Runner.runFeature(...) patterns.
How to use
Read the master orchestrator first.
Read this skill's reference files: source-profile.md, extraction.md, mappings.md.
Read target primer for your target.
Emit per target Emission Checklist.
Scope
Karate 1.0+ (including 1.4+ with improved UI support) and Karate 0.9.x legacy.
Feature files with Karate DSL — API-heavy tests (dominant use case) and UI tests (Karate UI).
Custom Java HttpClient injection via configure httpClientClass — preserve as todo with warning.
karate.env variants that change test semantics dynamically at runtime in ways not resolvable at extraction time — extract the default env and record others as env_profiles.