While addressing review feedback on #973, found that driver-core has no Failsafe plugin binding (Failsafe is only bound in driver-tests/osgi/* — a separate OSGi test suite), and Surefire's default include patterns (**/Test*.java, **/*Test.java, **/*Tests.java, **/*TestCase.java) never match *IT.java. The -Pshort/-Plong profiles only set the TestNG test.groups filter, which is applied within files Surefire has already selected by name — it can't rescue files that don't match the include patterns in the first place.
As a result, these existing CCM integration tests in driver-core appear to never actually run in CI on scylla-3.x:
LWTLoadBalancingIT
SchemaBuilderIT
TabletsIT
ZeroTokenNodesIT
(DriverConfigReportingCcmIT, added in #973, had the identical problem — fixed there by renaming to DriverConfigReportingCcmTest, which get picked up by Surefire's default discovery.)
Suggested fix
Either:
- Rename the 4 classes above to
*Test.java (simplest — matches the pattern Surefire already discovers, and what DriverConfigReportingCcmIT was changed to), or
- Wire up the Failsafe plugin properly for
driver-core (it's already declared in the root pom.xml's pluginManagement, just never bound in driver-core/pom.xml's own <build><plugins>) if there's a reason to keep the IT naming convention.
Verified by extracting the actual Surefire include/exclude configuration via mvn help:effective-pom and cross-checking against the decompiled SurefireMojo defaults in the maven-surefire-plugin jar — no override exists anywhere in this repo's POMs.
While addressing review feedback on #973, found that
driver-corehas no Failsafe plugin binding (Failsafe is only bound indriver-tests/osgi/*— a separate OSGi test suite), and Surefire's default include patterns (**/Test*.java,**/*Test.java,**/*Tests.java,**/*TestCase.java) never match*IT.java. The-Pshort/-Plongprofiles only set the TestNGtest.groupsfilter, which is applied within files Surefire has already selected by name — it can't rescue files that don't match the include patterns in the first place.As a result, these existing CCM integration tests in
driver-coreappear to never actually run in CI onscylla-3.x:LWTLoadBalancingITSchemaBuilderITTabletsITZeroTokenNodesIT(
DriverConfigReportingCcmIT, added in #973, had the identical problem — fixed there by renaming toDriverConfigReportingCcmTest, which get picked up by Surefire's default discovery.)Suggested fix
Either:
*Test.java(simplest — matches the pattern Surefire already discovers, and whatDriverConfigReportingCcmITwas changed to), ordriver-core(it's already declared in the rootpom.xml'spluginManagement, just never bound indriver-core/pom.xml's own<build><plugins>) if there's a reason to keep theITnaming convention.Verified by extracting the actual Surefire include/exclude configuration via
mvn help:effective-pomand cross-checking against the decompiledSurefireMojodefaults in themaven-surefire-pluginjar — no override exists anywhere in this repo's POMs.