diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 543602e50193a01871d5e04eb1228a937fac7bbf..07e08c9e01a45f9eb264a2a115acde76bff64a0d 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -84,7 +84,7 @@ chrome_test:
   dependencies:
     - dev_node_install
   script:
-    - npm test-e2e:chrome
+    - npm run test-e2e:chrome
 
 deploy:
   stage: deploy
diff --git a/__tests__/e2e/peer1.test.js b/__e2e_tests__/peer1.e2e.js
similarity index 100%
rename from __tests__/e2e/peer1.test.js
rename to __e2e_tests__/peer1.e2e.js
diff --git a/__tests__/e2e/peer2.test.js b/__e2e_tests__/peer2.e2e.js
similarity index 100%
rename from __tests__/e2e/peer2.test.js
rename to __e2e_tests__/peer2.e2e.js
diff --git a/__e2e_tests__/run b/__e2e_tests__/run
new file mode 100755
index 0000000000000000000000000000000000000000..31268656338036c77afc760f95d23e2f13190b37
--- /dev/null
+++ b/__e2e_tests__/run
@@ -0,0 +1,14 @@
+#!/bin/bash
+set -e
+
+TEST1="peer1.e2e.js"
+TEST2="peer2.e2e.js"
+
+case "$1" in
+ chrome) BROWSERS=chrome ;;
+ *) BROWSERS=all ;;
+esac
+
+COMMAND="npx testcafe $BROWSERS"
+
+$COMMAND $TEST1 & $COMMAND $TEST2
\ No newline at end of file
diff --git a/package.json b/package.json
index b9a4a6e8ba5db4775b3e1fa900ffef9d9a54c028..18718392ac4c51f52ce2fbd408bbb77d90e2891c 100644
--- a/package.json
+++ b/package.json
@@ -13,8 +13,8 @@
     "test": "jest --testPathIgnorePatterns src/liowebrtc src/rtcpeerconnection src/signalbuddy",
     "test-changed": "jest --only-changed --testPathIgnorePatterns src/liowebrtc src/rtcpeerconnection src/signalbuddy",
     "test-coverage": "jest --coverage --testPathIgnorePatterns src/liowebrtc src/rtcpeerconnection src/signalbuddy",
-    "test-e2e": "npx testcafe all serverIntegration.test.js & npx testcafe all peer.test.js",
-    "test-e2e:chrome": "npx testcafe chrome serverIntegration.test.js & npx testcafe chrome peer.test.js",
+    "test-e2e": "cd __e2e_tests__ ; ./run",
+    "test-e2e:chrome": "cd __e2e_tests__ ; ./run chrome",
     "lint": "jshint .",
     "validate": "npm ls"
   },