diff --git a/build.sbt b/build.sbt
index c84fcca11fb16c7238b61ca28f6801c4b214939c..6d9c9fb678b3bbcef76c3f90f0aec231e48160a8 100644
--- a/build.sbt
+++ b/build.sbt
@@ -35,10 +35,10 @@ Keys.fork in Test := true
 
 logBuffered in Test := false
 
-testOptions in Test += Tests.Argument("-oDF")
-
 javaOptions in Test ++= Seq("-Xss32M", "-Xmx4G", "-XX:MaxPermSize=128M")
 
-parallelExecution in test := false
+parallelExecution in Test := false
+
+testOptions in Test := Seq(Tests.Filter(s => s.endsWith("LeonAllTests")), Tests.Argument("-oDF"))
 
 sourcesInBase in Compile := false
diff --git a/src/test/scala/leon/test/LeonTests.scala b/src/test/scala/leon/test/LeonTests.scala
new file mode 100644
index 0000000000000000000000000000000000000000..c7a880fbac3a233e121b8e5ded7554a6e5686be6
--- /dev/null
+++ b/src/test/scala/leon/test/LeonTests.scala
@@ -0,0 +1,61 @@
+/* Copyright 2009-2014 EPFL, Lausanne */
+
+package leon.test
+
+import org.scalatest.Suites
+import evaluators._
+import codegen._
+import frontends._
+import purescala._
+import solvers._
+import repair._
+import synthesis._
+import termination._
+import utils._
+import verification._
+
+class LeonAllTests extends Suites(
+  new LeonUnitTests,
+  new LeonFunTests
+)
+
+class LeonFunTests extends Suites(
+  new FrontEndsTest,
+
+  new RepairSuite,
+
+  new TerminationRegression,
+
+  new StablePrintingSuite,
+  new SynthesisSuite,
+  new SynthesisRegressionSuite,
+
+  new LibraryVerificationRegression,
+  new PureScalaVerificationRegression,
+  new XLangVerificationRegression
+)
+
+class LeonUnitTests extends Suites(
+  new CodeGenTests,
+
+  new ImportsTests,
+
+  new Streams,
+
+  new DefOpsTests,
+  new LikelyEqSuite,
+  new TransformationTests,
+  new TreeNormalizationsTests,
+  new TreeOpsTests,
+  new TreeTests,
+
+  new EnumerationSolverTests,
+  new TimeoutSolverTests,
+  new UnrollingSolverTests,
+
+  new AlgebraSuite,
+  new LinearEquationsSuite,
+
+  new DefaultEvaluatorTests,
+  new EvaluatorsTests
+)