Run and debug Cucumber scenarios directly from .feature files with play buttons — like RubyMine and IntelliJ IDEA.
Supports Ruby, Java (Maven/Gradle), and Go (Godog).
Features
- Play buttons on every
FeatureandScenarioline - Run or Debug individual scenarios or entire feature files
- Auto-detects project language — no configuration needed
- Configurable commands for each language
Supported Languages
| Language | Detection | Run Command | Debug Command |
|---|---|---|---|
| Ruby | Gemfile |
bundle exec cucumber |
bundle exec cucumber -p debug |
| Java (Maven) | pom.xml |
mvn test -Dcucumber.features= |
Same as run |
| Java (Gradle) | build.gradle |
./gradlew test -Dcucumber.features= |
Same as run |
| Go | go.mod |
godog run |
godog run --format pretty |
Usage
- Open a
.featurefile - Click Run or Debug above any
Feature:orScenario:line
▶ Run Feature 🔍 Debug Feature
Feature: User Login
▶ Run 🔍 Debug
Scenario: Successful login
Given user is on login page
When user enters valid credentials
Then user should see dashboard
Configuration
The extension auto-detects your project language. Override with settings if needed:
General
| Setting | Default | Description |
|---|---|---|
cucumberRunner.language |
auto |
auto, ruby, java, or go |
Ruby
| Setting | Default | Description |
|---|---|---|
cucumberRunner.ruby.command |
bundle exec cucumber |
Run command |
cucumberRunner.ruby.debugCommand |
bundle exec cucumber -p debug |
Debug command |
Java
| Setting | Default | Description |
|---|---|---|
cucumberRunner.java.buildTool |
auto |
auto, maven, or gradle |
cucumberRunner.java.mavenCommand |
mvn test |
Maven command |
cucumberRunner.java.gradleCommand |
./gradlew test |
Gradle command |
cucumberRunner.java.runnerClass |
(empty) | Test runner class (e.g. com.example.RunCucumberTest) |
Go
| Setting | Default | Description |
|---|---|---|
cucumberRunner.go.command |
godog run |
Run command |
cucumberRunner.go.debugCommand |
godog run --format pretty |
Debug command |
Examples
Ruby Project
No config needed — detected from Gemfile:
Scenario click → bundle exec cucumber features/login.feature:5
Feature click → bundle exec cucumber features/login.feature
Debug click → bundle exec cucumber -p debug features/login.feature:5
Java Maven Project
No config needed — detected from pom.xml:
Scenario click → mvn test -Dcucumber.features="features/login.feature:5"
Feature click → mvn test -Dcucumber.features="features/login.feature"
With runner class configured:
{
"cucumberRunner.java.runnerClass": "com.example.RunCucumberTest"
}
Scenario click → mvn test -Dcucumber.features="features/login.feature:5" -Dtest=com.example.RunCucumberTest
Go (Godog) Project
No config needed — detected from go.mod:
Scenario click → godog run features/login.feature:5
Feature click → godog run features/login.feature
Debug click → godog run --format pretty features/login.feature:5
Requirements
- VS Code 1.80.0 or higher
- A Cucumber-based project with
.featurefiles - The corresponding test framework installed in your project
License
MIT