diff --git a/src/wp-admin/includes/ajax-actions.php b/src/wp-admin/includes/ajax-actions.php
index dc965d63cc..37fdc72067 100644
--- a/src/wp-admin/includes/ajax-actions.php
+++ b/src/wp-admin/includes/ajax-actions.php
@@ -3162,8 +3162,6 @@ function wp_ajax_press_this_add_category() {
  * Ajax handler for cropping an image.
  *
  * @since 4.3.0
- *
- * @global WP_Site_Icon $wp_site_icon
  */
 function wp_ajax_crop_image() {
 	$attachment_id = absint( $_POST['id'] );
@@ -3184,7 +3182,7 @@ function wp_ajax_crop_image() {
 	switch ( $context ) {
 		case 'site-icon':
 			require_once ABSPATH . '/wp-admin/includes/class-wp-site-icon.php';
-			global $wp_site_icon;
+			$wp_site_icon = new WP_Site_Icon();
 
 			// Skip creating a new attachment if the attachment is a Site Icon.
 			if ( get_post_meta( $attachment_id, '_wp_attachment_context', true ) == $context ) {
diff --git a/src/wp-admin/includes/class-wp-site-icon.php b/src/wp-admin/includes/class-wp-site-icon.php
index 3afc83def7..a54c60b704 100644
--- a/src/wp-admin/includes/class-wp-site-icon.php
+++ b/src/wp-admin/includes/class-wp-site-icon.php
@@ -240,8 +240,3 @@ class WP_Site_Icon {
 		return $value;
 	}
 }
-
-/**
- * @global WP_Site_Icon $wp_site_icon
- */
-$GLOBALS['wp_site_icon'] = new WP_Site_Icon;
diff --git a/tests/phpunit/tests/general/template.php b/tests/phpunit/tests/general/template.php
index d189cc9449..275b61f759 100644
--- a/tests/phpunit/tests/general/template.php
+++ b/tests/phpunit/tests/general/template.php
@@ -1,13 +1,15 @@
 <?php
-
 /**
  * A set of unit tests for functions in wp-includes/general-template.php
  *
  * @group template
+ * @group site_icon
  */
-class Tests_General_Template extends WP_UnitTestCase {
 
-	public $wp_site_icon;
+require_once( ABSPATH . 'wp-admin/includes/class-wp-site-icon.php' );
+
+class Tests_General_Template extends WP_UnitTestCase {
+	protected $wp_site_icon;
 	public $site_icon_id;
 	public $site_icon_url;
 
@@ -17,8 +19,7 @@ class Tests_General_Template extends WP_UnitTestCase {
 	function setUp() {
 		parent::setUp();
 
-		require_once ABSPATH . 'wp-admin/includes/class-wp-site-icon.php';
-		$this->wp_site_icon = $GLOBALS['wp_site_icon'];
+		$this->wp_site_icon = new WP_Site_Icon();
 	}
 
 	function tearDown() {
diff --git a/tests/phpunit/tests/image/site_icon.php b/tests/phpunit/tests/image/site_icon.php
index be75830966..bdd9822661 100644
--- a/tests/phpunit/tests/image/site_icon.php
+++ b/tests/phpunit/tests/image/site_icon.php
@@ -1,27 +1,33 @@
 <?php
-
 /**
  * Tests for the WP_Site_Icon class.
  *
  * @group site_icon
  */
+
+require_once( ABSPATH . 'wp-admin/includes/class-wp-site-icon.php' );
+
 class Tests_WP_Site_Icon extends WP_UnitTestCase {
-	public $wp_site_icon;
+	protected $wp_site_icon;
+
 	public $attachment_id = 0;
 
 	function setUp() {
 		parent::setUp();
 
-		require_once ABSPATH . 'wp-admin/includes/class-wp-site-icon.php';
-		$this->wp_site_icon = $GLOBALS['wp_site_icon'];
+		$this->wp_site_icon = new WP_Site_Icon();
 	}
 
 	function tearDown() {
-		$this->site_icon = null;
+		$this->_remove_custom_logo();
 		$this->remove_added_uploads();
 		parent::tearDown();
 	}
 
+	function _remove_custom_logo() {
+		remove_theme_mod( 'custom_logo' );
+	}
+
 	function test_intermediate_image_sizes() {
 		$image_sizes = $this->wp_site_icon->intermediate_image_sizes( array() );