JvmTestSuite add 'custom' tests

Hi. Looking at the JvmTestSuite documentation is not clear to me how (if possible) to add tests to a test suite.

For context, we have some functional tests that require the tests to be run in several different and very specific environments. In order to do so, we created custom tasks that run the tests ‘inside’ containers that met the different requirements. This allow us to run the tests in the same environment either if run locally (in a developer laptop) or in the CI/CD servers.

We’re now migrating to the JvmTestSuite as it greatly simplifies setting up test suites. The issue we are seeing is that the test suite looks to only refer to one specific test at the time. The limitation, as already said, is that as part of the suite we’d like to run a series of tests, something like:

testing {
    suites {
        integrationTest(JvmTestSuite) {
            useJUnitJupiter('5.9.3')
            dependencies {
                implementation project
            }
            sources {
                java {
                    srcDirs = ['src/integrationTest/groovy']
                }
            }
        }
        functionalTest(JvmTestSuite) {
            useJUnitJupiter('5.9.3')
            dependencies {
                implementation project
                implementation project.dependencies.gradleTestKit()
                implementation 'commons-io:commons-io:2.11.0'

            }
            sources {
                java {
                    srcDirs = ['src/functionalTest/groovy']
                }
            }
          tasks {
                 functionalTestSde99
                 functionalTestSde97
                 functionalTestSde92
          }
        // OR
         tasks {
                 tasks.named('functionalTestSde99')
                 tasks.named('functionalTestSde97')
                 tasks.named('functionalTestSde92')
          }
    }
}

tasks.register('functionalTestSde99', RunGoBuild) {
    containerImage = 'SDE99'
 ...
}

tasks.register('functionalTestSde97', RunGoBuild) {
        containerImage = 'SDE97'
 ..
}

tasks.register('functionalTestSde92', RunGoBuild) {
    containerImage = 'SDE92'
 ..
}

RunGoBuild is the custom type task that runs each test in a different container.

Another acceptable option would be for the test suite to be able to ‘depend’ in a series of tasks, something like:

testing.suites.funtionalTests {
   dependsOn functionalTestSde99
   dependsOn functionalTestSde97
   dependsOn functionalTestSde92
}

so that the test suite ‘calls’ a series of tasks. Or any other (better) way of creating this type of dependency. As said, did not find, so far, any way of doing this. Any ideas? Other ways of achiving a similar result?

Thanks

Currently the test suites only support one target and thus one task.
This hopefully gets extended in the future.
Currently if you want to run multiple tasks with different configuration per test suite, you need to manually register and configure those tasks.