diff --git a/core/Singleton.php b/core/Singleton.php
index 499fb28e52609d73cc23e0621d5d7b118bdc77c8..cde63cb744916a4eb560c3d1b24ab4587614ff8c 100644
--- a/core/Singleton.php
+++ b/core/Singleton.php
@@ -63,4 +63,12 @@ class Singleton
         $class = get_called_class();
         self::$instances[$class] = $instance;
     }
+
+    /**
+     * @ignore
+     */
+    public static function clearAll()
+    {
+        self::$instances = array();
+    }
 }
diff --git a/tests/PHPUnit/Framework/Fixture.php b/tests/PHPUnit/Framework/Fixture.php
index 2696888bcb2654e6744ff1076d1fb8a44d57c998..497b387d8d586f6a73fce2c9174913ebeb94e6be 100644
--- a/tests/PHPUnit/Framework/Fixture.php
+++ b/tests/PHPUnit/Framework/Fixture.php
@@ -40,6 +40,7 @@ use Piwik\Plugins\UsersManager\UsersManager;
 use Piwik\ReportRenderer;
 use Piwik\SettingsPiwik;
 use Piwik\SettingsServer;
+use Piwik\Singleton;
 use Piwik\Site;
 use Piwik\Tests\Framework\Mock\FakeAccess;
 use Piwik\Tests\Framework\TestCase\SystemTestCase;
@@ -350,6 +351,7 @@ class Fixture extends \PHPUnit_Framework_Assert
         PiwikCache::getEagerCache()->flushAll();
         ArchiveTableCreator::clear();
         \Piwik\Plugins\ScheduledReports\API::$cache = array();
+        Singleton::clearAll();
 
         $_GET = $_REQUEST = array();
         Translate::reset();