Uppercut: Karate in IntelliJ IDEA

Uppercut makes .feature files first-class in IntelliJ IDEA. It works in IDEA Community and Ultimate, from 2026.1 on, with Karate 1.x fully supported and Karate 2.x in early access since version 3.0.0.

Free and open source under Apache 2.0 - no account, no license key, no paid tier. The source is on GitHub; issues and pull requests are welcome.

Support status Settings reference Troubleshooting

Full Karate syntax support

Feature files get real language support, not Gherkin with the Karate parts painted grey. Step actions, match markers, embedded JSON, XML and JavaScript are all understood. In IDEA Community, where JetBrains’ JavaScript plugin isn’t available, the plugin brings its own JavaScript engine for the code inside your features - including the syntax Karate 2 accepts, such as optional chaining, ??, classes and BigInt literals.

Highlighting
Karate keywords, step actions, match markers and tags, with embedded JSON, XML and JavaScript highlighted in their own right.
Completion
Step actions as you type, and karate.* members matched to the Karate version on your module’s classpath, so karate. offers what your Karate actually has.
Navigation
Jump from a call read('other.feature') to the feature, from a variable to its def, and from a step to its definition. A variable that holds a called feature’s result follows the call: on auth.token, where auth is call read('auth.feature'), token jumps to the def token inside auth.feature, and Find Usages on that def finds auth.token in the callers. Find usages and rename work across features.
Formatting
Reformat feature files, including the JavaScript and JSON inside them.
Inspections and quick fixes
Undefined steps, broken or misaligned tables, missing Examples, a misplaced Background, JSON that isn’t valid, and an intention to turn a Scenario into a Scenario Outline.

Run from the gutter

Click the run icon next to a feature, a scenario or a tag, or right-click a folder that holds feature files and choose Karate tests in ‘…‘ - in a Gradle project that entry takes the place of Gradle’s own “Tests in” for that folder, since the folder’s Java runner class is still runnable on its own. Results appear in IntelliJ’s test tree as they happen, with each scenario’s steps and their output beneath it, called features nested under the scenario that called them, and a double-click that takes you to the source line. Environment and parallelism come from the run configuration or from the defaults you set once.

Karate 1 and Karate 2 projects both work, and the version is detected per module, so a repository can migrate one module at a time. If you’d rather decide yourself, one setting pins it.

Debugging

Press Debug and a breakpoint on a step in a feature file stops the run there, on both Karate majors. The debugger shows the scenario’s variables as Karate holds them, and Evaluate runs Karate expressions in the paused scenario. Stepping through steps isn’t built yet, and Java breakpoints no longer stop during a Karate run - see the status page for both.


Apache 2.0. Uppercut is not affiliated with Karate Labs or JetBrains.

This site uses Just the Docs, a documentation theme for Jekyll.