diff --git a/.travis.yml b/.travis.yml
index a5ec7a4f6..5951e1e6e 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,26 +1,35 @@
+sudo: false
+
 language: node_js
+
 node_js:
   - 0.10
 
+addons:
+  apt:
+    sources:
+      - mongodb-upstart
+    packages:
+      - mongodb-org-server
+
+cache:
+  directories:
+    - node_modules
+    - bower_components
+
 before_install:
-  - "sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10"
-  - "echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list"
-  - "sudo apt-get update"
-  - "sudo apt-get install mongodb-org-server"
+  - npm install -g npm@latest
 
 before_script:
-  - "npm install"
   - export DISPLAY=:99.0
   - export COCO_TRAVIS_TEST=1
   - sh -e /etc/init.d/xvfb start
   - "./node_modules/.bin/bower install"
   - "gem install sass"
   - "./node_modules/.bin/brunch b"
-  - "mkdir mongo"
-  - "mongod --dbpath=./mongo --fork --logpath ./mongodb.log"
   - "node index.js --unittest &"
   - "sleep 10" # to give node a chance to start
 
 script:
   - "./node_modules/jasmine-node/bin/jasmine-node test/server/ --coffee --captureExceptions"
-  # - "./node_modules/karma/bin/karma start --browsers Firefox --single-run --reporters progress"
+  - "./node_modules/karma/bin/karma start --browsers Firefox --single-run --reporters progress"
diff --git a/app/assets/javascripts/run-tests.js b/app/assets/javascripts/run-tests.js
index a32c38e6e..bcf712b49 100644
--- a/app/assets/javascripts/run-tests.js
+++ b/app/assets/javascripts/run-tests.js
@@ -3,6 +3,7 @@
 
 
 window.userObject = {_id:'1'}
+window.StripeCheckout = {configure: function (){}}
 initialize = require('core/initialize');
 initialize.init();
 console.debug = function() {}; // Karma conf doesn't seem to work? Debug messages are still emitted when they shouldn't be.
diff --git a/package.json b/package.json
index b9d9ed1df..b779bdb79 100644
--- a/package.json
+++ b/package.json
@@ -92,7 +92,7 @@
     "karma": "~0.12",
     "karma-chrome-launcher": "~0.1.2",
     "karma-coffee-preprocessor": "~0.1.2",
-    "karma-coverage": "~0.1.4",
+    "karma-coverage": "~0.5.1",
     "karma-firefox-launcher": "~0.1.3",
     "karma-html2js-preprocessor": "~0.1.0",
     "karma-jasmine": "~0.2.0",
diff --git a/test/app/lib/LevelLoader.spec.coffee b/test/app/lib/LevelLoader.spec.coffee
index b7416abf5..244358aac 100644
--- a/test/app/lib/LevelLoader.spec.coffee
+++ b/test/app/lib/LevelLoader.spec.coffee
@@ -94,6 +94,7 @@ describe 'LevelLoader', ->
   describe 'loadDependenciesForSession', ->
     it 'loads hero and item thang types from heroConfig in the given session', ->
       levelLoader = new LevelLoader({supermodel:new SuperModel(), sessionID: 'id', levelID: 'id'})
+      levelLoader.sessionDependenciesRegistered = {}
       session = new LevelSession(sessionWithAnyaWithGloves)
       levelLoader.loadDependenciesForSession(session)
       requests = jasmine.Ajax.requests.all()
@@ -103,6 +104,7 @@ describe 'LevelLoader', ->
 
     it 'loads components for the hero in the heroConfig in the given session', ->
       levelLoader = new LevelLoader({supermodel:new SuperModel(), sessionID: 'id', levelID: 'id'})
+      levelLoader.sessionDependenciesRegistered = {}
       session = new LevelSession(sessionWithAnyaWithGloves)
       levelLoader.loadDependenciesForSession(session)
       responses = {