We have just started using Gradle and TestNG in our project, so I am checking if refusing any test does not allow the build. I was very surprised to see that this is not so. Tests are compiled and compiled correctly, so I see class files. I also get a launch report, but it says 0 tests (2 expected). Running gradle clean test -i gives me the following:
:contentplatform-service:compileTestJava (Thread[Daemon worker Thread 7,5,main]) started. :contentplatform-service:compileTestJava Executing task ':contentplatform-service:compileTestJava' (up-to-date check took 0.08 secs) due to: Output file D:\Dev\contentplatform-service\build\classes\test has changed. Output file D:\Dev\contentplatform-service\build\dependency-cache has changed. Output file D:\Dev\contentplatform-service\build\classes\test\nl\xillio\conten tplatform\service\SuperSimpleTest.class has been removed. All input files are considered out-of-date for incremental task ':contentplatfor m-service:compileTestJava'. Compiling with JDK Java compiler API. :contentplatform-service:compileTestJava (Thread[Daemon worker Thread 7,5,main]) completed. Took 0.229 secs. :contentplatform-service:processTestResources (Thread[Daemon worker Thread 7,5,m ain]) started. :contentplatform-service:processTestResources Skipping task ':contentplatform-service:processTestResources' as it has no sourc e files. :contentplatform-service:processTestResources UP-TO-DATE :contentplatform-service:processTestResources (Thread[Daemon worker Thread 7,5,m ain]) completed. Took 0.001 secs. :contentplatform-service:testClasses (Thread[Daemon worker Thread 7,5,main]) sta rted. :contentplatform-service:testClasses Skipping task ':contentplatform-service:testClasses' as it has no actions. :contentplatform-service:testClasses (Thread[Daemon worker Thread 7,5,main]) com pleted. Took 0.001 secs. :contentplatform-service:test (Thread[Daemon worker Thread 7,5,main]) started. :contentplatform-service:test Executing task ':contentplatform-service:test' (up-to-date check took 0.049 secs ) due to: Output file D:\Dev\contentplatform-service\build\test-results\binary\test has changed. Output file D:\Dev\contentplatform-service\build\test-results has changed. Output file D:\Dev\contentplatform-service\build\reports\tests has changed. Finished generating test XML results (0.0 secs) into: D:\Dev\contentplatform-ser vice\build\test-results Generating HTML test report... Finished generating test html results (0.014 secs) into: D:\Dev\contentplatform- service\build\reports\tests :contentplatform-service:test (Thread[Daemon worker Thread 7,5,main]) completed. Took 0.194 secs.
SuperSimpleTest.java:
package nl.xillio.contentplatform.service; import org.testng.Assert; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; @Test public class SuperSimpleTest { @BeforeClass public void setUp() {
build.gradle contains:
test { // enable TestNG support (default is JUnit) useTestNG() scanForTestClasses = false include '**/*' testLogging { showStandardStreams = true // log results to "build/test-results" directory exceptionFormat "full" events "started", "passed", "skipped", "failed", "standardOut", "standardError" } }
I already looked at other questions on this topic, and there I found a hint to use scanForTestClasses = false as a workaround (see https://issues.gradle.org/browse/GRADLE-1682 ). However, this problem seems unrelated. Can I make some other mistake? How can I make SuperSimpleTest just execute?
UPDATE: I tried to get Gradle to run a specific test with an interesting error as a result: Gradle complains about the JUnit version of the TestNG task