diff options
author | Marcelo Vanzin <vanzin@cloudera.com> | 2015-09-15 10:45:02 -0700 |
---|---|---|
committer | Marcelo Vanzin <vanzin@cloudera.com> | 2015-09-15 10:45:02 -0700 |
commit | 8abef21dac1a6538c4e4e0140323b83d804d602b (patch) | |
tree | f95a782626def50ae2977ffc9c63057daf1d9afa /project/SparkBuild.scala | |
parent | c35fdcb7e9c01271ce560dba4e0bd37569c8f5d1 (diff) | |
download | spark-8abef21dac1a6538c4e4e0140323b83d804d602b.tar.gz spark-8abef21dac1a6538c4e4e0140323b83d804d602b.tar.bz2 spark-8abef21dac1a6538c4e4e0140323b83d804d602b.zip |
[SPARK-10300] [BUILD] [TESTS] Add support for test tags in run-tests.py.
This change does two things:
- tag a few tests and adds the mechanism in the build to be able to disable those tags,
both in maven and sbt, for both junit and scalatest suites.
- add some logic to run-tests.py to disable some tags depending on what files have
changed; that's used to disable expensive tests when a module hasn't explicitly
been changed, to speed up testing for changes that don't directly affect those
modules.
Author: Marcelo Vanzin <vanzin@cloudera.com>
Closes #8437 from vanzin/test-tags.
Diffstat (limited to 'project/SparkBuild.scala')
-rw-r--r-- | project/SparkBuild.scala | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/project/SparkBuild.scala b/project/SparkBuild.scala index 901cfa538d..d80d300f1c 100644 --- a/project/SparkBuild.scala +++ b/project/SparkBuild.scala @@ -567,11 +567,20 @@ object TestSettings { javaOptions in Test ++= "-Xmx3g -Xss4096k -XX:PermSize=128M -XX:MaxNewSize=256m -XX:MaxPermSize=1g" .split(" ").toSeq, javaOptions += "-Xmx3g", + // Exclude tags defined in a system property + testOptions in Test += Tests.Argument(TestFrameworks.ScalaTest, + sys.props.get("test.exclude.tags").map { tags => + tags.split(",").flatMap { tag => Seq("-l", tag) }.toSeq + }.getOrElse(Nil): _*), + testOptions in Test += Tests.Argument(TestFrameworks.JUnit, + sys.props.get("test.exclude.tags").map { tags => + Seq("--exclude-categories=" + tags) + }.getOrElse(Nil): _*), // Show full stack trace and duration in test cases. testOptions in Test += Tests.Argument("-oDF"), - testOptions += Tests.Argument(TestFrameworks.JUnit, "-v", "-a"), + testOptions in Test += Tests.Argument(TestFrameworks.JUnit, "-v", "-a"), // Enable Junit testing. - libraryDependencies += "com.novocode" % "junit-interface" % "0.9" % "test", + libraryDependencies += "com.novocode" % "junit-interface" % "0.11" % "test", // Only allow one test at a time, even across projects, since they run in the same JVM parallelExecution in Test := false, // Make sure the test temp directory exists. |