Cucumber Runner
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
Feature and Scenario line
- 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
.feature file
- Click Run or Debug above any
Feature: or Scenario: 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
.feature files
- The corresponding test framework installed in your project
License
MIT