Ray Nicholus
Ray Nicholus

Reputation: 19890

Selecting specific tests to run in gradle

I'm trying to fix our messy failing test runs, and, unfortunately, I'm very new to gradle. We currently have testng, junit, and I'd like to add some spock tests to the mix as well. I'm not quite sure how gradle determines which tests to run when I type "gradle test". How can I prevent the testng &/or junit tests from running? How can I get gradle to start running my spock tests?

Upvotes: 14

Views: 19074

Answers (3)

Ben EINAUDI
Ben EINAUDI

Reputation: 177

You may provide using the command line:

$> gradle test --tests org.somewhere.MyTestClass

Or even

$> gradle test --tests org.somewhere.MyTestClass.my_test_case

Upvotes: 9

mschmoock
mschmoock

Reputation: 20854

$> gradle test -Dtest.single=YourTestClass

Upvotes: 3

Peter Niederwieser
Peter Niederwieser

Reputation: 123890

By default, the test task runs all JUnit tests it can find, which includes any Spock tests. To make it run TestNG tests instead, configure the task as follows:

test {
    useTestNG()
}

If you have both JUnit and TestNG tests, you need two test tasks, one for each test framework.

To run a subset of tests, use the -Dtest.single system property. For more information, see the corresponding section in the Gradle User Guide.

Upvotes: 15

Related Questions