diff --git a/core/src/main/scala/spark/scheduler/cluster/SparkDeploySchedulerBackend.scala b/core/src/main/scala/spark/scheduler/cluster/SparkDeploySchedulerBackend.scala
index 0043dbeb10bcf480d5463f202313393c0b7a7229..88cb11454480abd73dcb7963ebee0e8b09a35e30 100644
--- a/core/src/main/scala/spark/scheduler/cluster/SparkDeploySchedulerBackend.scala
+++ b/core/src/main/scala/spark/scheduler/cluster/SparkDeploySchedulerBackend.scala
@@ -25,7 +25,8 @@ private[spark] class SparkDeploySchedulerBackend(
     "SPARK_MEM",
     "SPARK_CLASSPATH",
     "SPARK_LIBRARY_PATH",
-    "SPARK_JAVA_OPTS"
+    "SPARK_JAVA_OPTS",
+    "SPARK_TESTING"
   )
 
   // Memory used by each executor (in megabytes)
diff --git a/core/src/main/scala/spark/scheduler/mesos/CoarseMesosSchedulerBackend.scala b/core/src/main/scala/spark/scheduler/mesos/CoarseMesosSchedulerBackend.scala
index 9737c6b63e2c1d32fa2479bc32f96c69732e80c8..e6d8b9d8226226e7823e80ec571adf483a967ec6 100644
--- a/core/src/main/scala/spark/scheduler/mesos/CoarseMesosSchedulerBackend.scala
+++ b/core/src/main/scala/spark/scheduler/mesos/CoarseMesosSchedulerBackend.scala
@@ -38,7 +38,8 @@ private[spark] class CoarseMesosSchedulerBackend(
     "SPARK_MEM",
     "SPARK_CLASSPATH",
     "SPARK_LIBRARY_PATH",
-    "SPARK_JAVA_OPTS"
+    "SPARK_JAVA_OPTS",
+    "SPARK_TESTING"
   )
 
   val MAX_SLAVE_FAILURES = 2     // Blacklist a slave after this many failures
diff --git a/core/src/main/scala/spark/scheduler/mesos/MesosSchedulerBackend.scala b/core/src/main/scala/spark/scheduler/mesos/MesosSchedulerBackend.scala
index e85e4ef31887ebeda4086acfbfc46ca64bf45c34..6f01c8c09dafeafe25cbcc425496b6c1eedb71b3 100644
--- a/core/src/main/scala/spark/scheduler/mesos/MesosSchedulerBackend.scala
+++ b/core/src/main/scala/spark/scheduler/mesos/MesosSchedulerBackend.scala
@@ -34,7 +34,8 @@ private[spark] class MesosSchedulerBackend(
     "SPARK_MEM",
     "SPARK_CLASSPATH",
     "SPARK_LIBRARY_PATH",
-    "SPARK_JAVA_OPTS"
+    "SPARK_JAVA_OPTS",
+    "SPARK_TESTING"
   )
 
   // Memory used by each executor (in megabytes)
diff --git a/run b/run
index 6cab4765eee1fbefcf6d93bd40ea9f727f153e41..cb1499c6f9d631c1dbcbb49dd4536b842693639f 100755
--- a/run
+++ b/run
@@ -21,7 +21,7 @@ fi
 
 # If the user specifies a Mesos JAR, put it before our included one on the classpath
 MESOS_CLASSPATH=""
-if [ -z "$MESOS_JAR" ] ; then
+if [ -n "$MESOS_JAR" ] ; then
   MESOS_CLASSPATH="$MESOS_JAR"
 fi
 
@@ -52,7 +52,9 @@ CLASSPATH="$SPARK_CLASSPATH"
 CLASSPATH+=":$MESOS_CLASSPATH"
 CLASSPATH+=":$FWDIR/conf"
 CLASSPATH+=":$CORE_DIR/target/scala-$SCALA_VERSION/classes"
-CLASSPATH+=":$CORE_DIR/target/scala-$SCALA_VERSION/test-classes"
+if [ -n "$SPARK_TESTING" ] ; then
+  CLASSPATH+=":$CORE_DIR/target/scala-$SCALA_VERSION/test-classes"
+fi
 CLASSPATH+=":$CORE_DIR/src/main/resources"
 CLASSPATH+=":$REPL_DIR/target/scala-$SCALA_VERSION/classes"
 CLASSPATH+=":$EXAMPLES_DIR/target/scala-$SCALA_VERSION/classes"
diff --git a/sbt/sbt b/sbt/sbt
index fab996728686a59cee0c0d23619b986eb15066b9..a3055c13c1b0fb420f901122e59f4a2cf01f3ecd 100755
--- a/sbt/sbt
+++ b/sbt/sbt
@@ -4,4 +4,5 @@ if [ "$MESOS_HOME" != "" ]; then
   EXTRA_ARGS="-Djava.library.path=$MESOS_HOME/lib/java"
 fi
 export SPARK_HOME=$(cd "$(dirname $0)/.."; pwd)
+export SPARK_TESTING=1  # To put test classes on classpath
 java -Xmx1200M -XX:MaxPermSize=200m $EXTRA_ARGS -jar $SPARK_HOME/sbt/sbt-launch-*.jar "$@"