Index: Gruntfile.js
===================================================================
--- Gruntfile.js	(revision 25997)
+++ Gruntfile.js	(working copy)
@@ -23,7 +23,8 @@
 					BUILD_DIR + 'wp-includes/js/tinymce/wp-tinymce-schema.min.js',
 					BUILD_DIR + 'wp-includes/js/tinymce/mark_loaded.js'
 				]
-			}
+			},
+            qunit:[ 'tests/qunit/compiled.html' ] 
 		},
 		copy: {
 			files: {
@@ -137,6 +138,18 @@
 		qunit: {
 			files: ['tests/qunit/**/*.html']
 		},
+        'string-replace': {
+            qunit: {
+                files: {
+                    'tests/qunit/compiled.html' : 'tests/qunit/index.html' 
+                }, options: 
+                    {replacements:[{
+                        pattern: /([^\.])*\.\.\/src/ig ,
+                        replacement: '/../build'
+                    }]
+                }
+            }
+        },
 		uglify: {
 			core: {
 				expand: true,
@@ -237,8 +250,9 @@
 	grunt.registerTask('build', ['clean:all', 'copy:all', 'cssmin:core', 'uglify:core',
 		'uglify:tinymce', 'concat:tinymce', 'compress:tinymce', 'clean:tinymce']);
 
-	// Testing task.
+	// Testing tasks.
 	grunt.registerTask('test', ['qunit']);
+    grunt.registerTask('test:compiled', ['build', 'clean:qunit', 'string-replace', 'qunit']);
 
 	// Default task.
 	grunt.registerTask('default', ['build']);
Index: package.json
===================================================================
--- package.json	(revision 25997)
+++ package.json	(working copy)
@@ -19,6 +19,7 @@
     "grunt-contrib-compress": "~0.5.2",
     "grunt-contrib-concat": "~0.3.0",
     "grunt-contrib-jshint": "~0.7.0",
+    "grunt-string-replace": "~0.2.4",
     "matchdep": "~0.1.2"
   }
 }
