diff --git a/package.json b/package.json index 41eef28..61bd666 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "cucumber-java-test-runner", "displayName": "Cucumber Test Runner for Java", "description": "Run and debug Cucumber BDD scenarios from VS Code's native Test Explorer. Integrates with Maven and cucumber-junit-platform-engine.", - "version": "0.1.2", + "version": "0.1.3", "publisher": "arunkris", "license": "MIT", "repository": { diff --git a/src/execution/mavenRunner.ts b/src/execution/mavenRunner.ts index 1d0584d..35455de 100644 --- a/src/execution/mavenRunner.ts +++ b/src/execution/mavenRunner.ts @@ -83,7 +83,8 @@ export class MavenRunner implements BuildToolRunner { // Only run the Cucumber engine — prevents non-Cucumber tests from // executing and avoids double execution through the Suite engine. - args.push('-Dincludejunit5engines=cucumber'); + // User property name: surefire.includeJUnit5Engines (fixed in SUREFIRE-2059). + args.push('-Dsurefire.includeJUnit5Engines=cucumber'); // Pass glue so the Cucumber engine finds step definitions without // scanning the entire classpath. diff --git a/src/test/unit/mavenRunner.test.ts b/src/test/unit/mavenRunner.test.ts index 01a9e0e..6f38f47 100644 --- a/src/test/unit/mavenRunner.test.ts +++ b/src/test/unit/mavenRunner.test.ts @@ -215,7 +215,7 @@ describe('MavenRunner', () => { featureTargets: ['src/test/resources/login.feature:10'], runnerClass: 'CucumberTest', }); - assert.ok(cmd.args.includes('-Dincludejunit5engines=cucumber'), + assert.ok(cmd.args.includes('-Dsurefire.includeJUnit5Engines=cucumber'), 'Should include engine filter'); assert.ok(!cmd.args.some(a => a.startsWith('-Dtest=!')), 'Should NOT use -Dtest=! exclusion'); @@ -226,7 +226,7 @@ describe('MavenRunner', () => { projectRoot: tmpDir, featureTargets: ['src/test/resources/login.feature:10'], }); - assert.ok(cmd.args.includes('-Dincludejunit5engines=cucumber'), + assert.ok(cmd.args.includes('-Dsurefire.includeJUnit5Engines=cucumber'), 'Should include engine filter even without runnerClass'); assert.ok(!cmd.args.some(a => a.startsWith('-Dtest=')), 'Should not have any -Dtest arg'); @@ -263,7 +263,7 @@ describe('MavenRunner', () => { featureTargets: [], runnerClass: 'com.example.RunCucumber', }); - assert.ok(!cmd.args.includes('-Dincludejunit5engines=cucumber'), + assert.ok(!cmd.args.includes('-Dsurefire.includeJUnit5Engines=cucumber'), 'Should not include engine filter for Run All'); assert.ok(cmd.args.includes('-Dtest=com.example.RunCucumber'), 'Should use -Dtest for Run All');