spring-test.gradle 4.9 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113
description = "Spring TestContext Framework"

dependencies {
	compile(project(":spring-core"))
	optional(project(":spring-aop"))
	optional(project(":spring-beans"))
	optional(project(":spring-context"))
	optional(project(":spring-jdbc"))
	optional(project(":spring-orm"))
	optional(project(":spring-tx"))
	optional(project(":spring-web"))
	optional(project(":spring-webflux"))
	optional(project(":spring-webmvc"))
	optional(project(":spring-websocket"))
	optional("junit:junit:4.12")
	optional("org.junit.jupiter:junit-jupiter-api:${junitJupiterVersion}")
	optional("org.testng:testng:6.11")
	optional("javax.inject:javax.inject:1")
	optional("javax.servlet:javax.servlet-api:4.0.0")
	optional("javax.servlet.jsp:javax.servlet.jsp-api:2.3.2-b02")
	optional("javax.servlet.jsp.jstl:javax.servlet.jsp.jstl-api:1.2.1")
	optional("org.apache.taglibs:taglibs-standard-jstlel:1.2.5") {
		exclude group: "org.apache.taglibs", module: "taglibs-standard-spec"
	}
	optional("javax.el:javax.el-api:3.0.1-b04")
	optional("javax.websocket:javax.websocket-api:1.1")
	optional("javax.activation:activation:${activationVersion}")
	optional("javax.xml.bind:jaxb-api:${jaxbVersion}")
	optional("org.aspectj:aspectjweaver:${aspectjVersion}")
	optional("org.codehaus.groovy:groovy-all:${groovyVersion}")
	optional("org.hamcrest:hamcrest-core:1.3")
	optional("net.sourceforge.htmlunit:htmlunit:2.27") {
		exclude group: "commons-logging", module: "commons-logging"
	}
	optional("org.seleniumhq.selenium:htmlunit-driver:2.27")
	optional("org.seleniumhq.selenium:selenium-java:3.4.0") {
		exclude group: "io.netty", module: "netty"
	}
	optional("org.xmlunit:xmlunit-matchers:2.3.0")
	optional("org.skyscreamer:jsonassert:1.5.0")
	optional("com.jayway.jsonpath:json-path:2.4.0")
	optional("org.jetbrains.kotlin:kotlin-reflect:${kotlinVersion}")
	optional("org.jetbrains.kotlin:kotlin-stdlib:${kotlinVersion}")
	optional("io.projectreactor:reactor-test")
	testCompile(project(":spring-context-support"))
	testCompile(project(":spring-oxm"))
	testCompile("javax.mail:javax.mail-api:${javamailVersion}")
	testCompile("javax.ejb:javax.ejb-api:3.2")
	testCompile("javax.interceptor:javax.interceptor-api:1.2")
	testCompile("javax.cache:cache-api:1.0.0")
	testCompile("org.hibernate:hibernate-core:5.2.10.Final")
	testCompile("org.hibernate:hibernate-validator:6.0.1.Final")
	// Enable use of the JUnitPlatform Runner
	testCompile("org.junit.platform:junit-platform-runner:${junitPlatformVersion}")
	testCompile("org.junit.jupiter:junit-jupiter-params:${junitJupiterVersion}")
	testCompile("com.fasterxml.jackson.core:jackson-databind:${jackson2Version}")
	testCompile("com.thoughtworks.xstream:xstream:1.4.10")
	testCompile("com.rometools:rome:1.7.4")
	testCompile("org.apache.tiles:tiles-api:${tiles3Version}")
	testCompile("org.apache.tiles:tiles-core:${tiles3Version}") {
		exclude group: "org.slf4j", module: "jcl-over-slf4j"
	}
	testCompile("org.apache.tiles:tiles-servlet:${tiles3Version}") {
		exclude group: "org.slf4j", module: "jcl-over-slf4j"
	}
	testCompile("org.hsqldb:hsqldb:${hsqldbVersion}")
	testCompile("org.apache.httpcomponents:httpclient:${httpclientVersion}") {
		exclude group: "commons-logging", module: "commons-logging"
	}
	testCompile('io.projectreactor.ipc:reactor-netty')
	// Pull in the latest JUnit 5 Launcher API and the Vintage engine as well
	// so that we can run JUnit 4 tests in IntelliJ IDEA.
	testRuntime("org.junit.jupiter:junit-jupiter-engine:${junitJupiterVersion}")
	testRuntime("org.junit.platform:junit-platform-launcher:${junitPlatformVersion}")
	testRuntime("org.junit.vintage:junit-vintage-engine:${junitVintageVersion}")
	testCompile('de.bechte.junit:junit-hierarchicalcontextrunner:4.12.1')
	testRuntime("org.apache.logging.log4j:log4j-jul:${log4jVersion}")  // Java Util Logging for JUnit 5
	testRuntime("javax.annotation:javax.annotation-api:1.3")
	testRuntime("org.glassfish:javax.el:3.0.1-b08")
	testRuntime("com.sun.xml.bind:jaxb-core:${jaxbVersion}")
	testRuntime("com.sun.xml.bind:jaxb-impl:${jaxbVersion}")
}

task testNG(type: Test) {
	description = 'Runs TestNG tests.'
	useTestNG()
	scanForTestClasses = false
	include(["**/testng/**/*Tests.class", "**/testng/**/*Test.class"])
	// Show STD_OUT & STD_ERR of the test JVM(s) on the console:
	// testLogging.showStandardStreams = true
	// forkEvery 1
	reports.junitXml.destination = file("$buildDir/test-results")
}

test {
	description = 'Runs JUnit tests.'
	dependsOn testNG
	useJUnit()
	scanForTestClasses = false
	include(['**/*Tests.class', '**/*Test.class', '**/SpringJUnitJupiterTestSuite.class'])
	exclude(['**/testng/**/*.*'])
	// Java Util Logging for JUnit 5.
	// systemProperty('java.util.logging.manager', 'org.apache.logging.log4j.jul.LogManager')
	reports.junitXml.destination = file("$buildDir/test-results")
}

task aggregateTestReports(type: TestReport) {
	description = 'Aggregates JUnit and TestNG test reports.'
	destinationDir = test.reports.html.destination
	reportOn test, testNG
}

check.dependsOn aggregateTestReports