diff --git a/pavelib/prereqs.py b/pavelib/prereqs.py
index 11b85a194a981e05a2915a6eba7c250da6f6a634..50a7ca1a8d01d76a417be7de14f90c7974593243 100644
--- a/pavelib/prereqs.py
+++ b/pavelib/prereqs.py
@@ -305,7 +305,8 @@ def install_prereqs():
         print NO_PREREQ_MESSAGE
         return
 
-    install_node_prereqs()
+    if not str2bool(os.environ.get('SKIP_NPM_INSTALL', 'False')):
+        install_node_prereqs()
     install_python_prereqs()
     log_installed_python_prereqs()
 
diff --git a/scripts/unit-tests.sh b/scripts/unit-tests.sh
index d9f4cbfe743eb49bd20d7adb8c03e664e8c9c2a9..837dd8e73e70a7a48eb20788e1de0dbc3dbecaa2 100755
--- a/scripts/unit-tests.sh
+++ b/scripts/unit-tests.sh
@@ -31,6 +31,7 @@ set -e
 
 PAVER_ARGS="-v"
 PARALLEL="--processes=-1"
+export SKIP_NPM_INSTALL="True"
 
 # Skip re-installation of Python prerequisites inside a tox execution.
 if [[ -n "$TOXENV" ]]; then
diff --git a/tox.ini b/tox.ini
index 63b3f8592b0475691e3d40e003827edcb0fd0736..a53421bd6308f2af6ebe5ef616b461958d37d6f6 100644
--- a/tox.ini
+++ b/tox.ini
@@ -42,6 +42,7 @@ passenv =
     SELENIUM_HOST
     SELENIUM_PORT
     SHARD
+    SKIP_NPM_INSTALL
     TEST_SUITE
 deps =
     django18: Django>=1.8,<1.9