diff --git a/core/modules/config/src/Tests/LanguageNegotiationFormOverrideTest.php b/core/modules/config/src/Tests/LanguageNegotiationFormOverrideTest.php
index b5289cb776740b4051d433f2cc544e2f306af1c2..add0c2875d3257ced177abd61323197151c65b76 100644
--- a/core/modules/config/src/Tests/LanguageNegotiationFormOverrideTest.php
+++ b/core/modules/config/src/Tests/LanguageNegotiationFormOverrideTest.php
@@ -17,7 +17,7 @@
  */
 class LanguageNegotiationFormOverrideTest extends WebTestBase {
 
-  public static $modules = array('language', 'locale');
+  public static $modules = array('language', 'locale', 'locale_test');
 
   /**
    * Tests that overrides do not affect language-negotiation form values.
diff --git a/core/modules/language/src/Tests/LanguageSwitchingTest.php b/core/modules/language/src/Tests/LanguageSwitchingTest.php
index 1b96203fc90076efcd4cb864f59037ccaffb82ad..a3c37dbf6d21788cf494ea7dd570b972a220aa78 100644
--- a/core/modules/language/src/Tests/LanguageSwitchingTest.php
+++ b/core/modules/language/src/Tests/LanguageSwitchingTest.php
@@ -25,7 +25,7 @@ class LanguageSwitchingTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('locale', 'language', 'block', 'language_test', 'menu_ui');
+  public static $modules = array('locale', 'locale_test', 'language', 'block', 'language_test', 'menu_ui');
 
   protected function setUp() {
     parent::setUp();
diff --git a/core/modules/locale/locale.compare.inc b/core/modules/locale/locale.compare.inc
index 4a2f69a2a599a1362caed8456f1819da7e58d7a5..2aa6526084bc71cd7a3ba9037b5ebdbeee959f51 100644
--- a/core/modules/locale/locale.compare.inc
+++ b/core/modules/locale/locale.compare.inc
@@ -44,11 +44,6 @@ function locale_translation_flush_projects() {
  *   - "status": Project status, 1 = enabled.
  */
 function locale_translation_build_projects() {
-  // This function depends on Update module. We degrade gracefully.
-  if (!\Drupal::moduleHandler()->moduleExists('update')) {
-    return array();
-  }
-
   // Get the project list based on .info.yml files.
   $projects = locale_translation_project_list();
 
@@ -57,33 +52,18 @@ function locale_translation_build_projects() {
 
   $default_server = locale_translation_default_translation_server();
 
-  // If project is a dev release, or core, find the latest available release.
-  $project_updates = update_get_available(TRUE);
   foreach ($projects as $name => $data) {
-    if (isset($project_updates[$name]['releases']) && $project_updates[$name]['project_status'] != 'not-fetched') {
-      // Find out if a dev version is installed.
-      if (preg_match("/^\d+\.x-(\d+)\..*-dev$/", $data['info']['version'], $matches) ||
-          preg_match("/^(\d+)\.\d+\.\d+.*-dev$/", $data['info']['version'], $matches)) {
-        // Find a suitable release to use as alternative translation.
-        foreach ($project_updates[$name]['releases'] as $project_release) {
-          // The first release with the same major release number which is not a
-          // dev release is the one. Releases are sorted the most recent first.
-          // For example the major release number for a contrib module
-          // 8.x-2.x-dev is "2", for core 8.1.0-dev is "8".
-          // @todo https://www.drupal.org/node/1774024 Make a helper function.
-          if ($project_release['version_major'] == $matches[1] &&
-              (!isset($project_release['version_extra']) || $project_release['version_extra'] != 'dev')) {
-            $release = $project_release;
-            break;
-          }
-        }
+    // For dev releases, remove the '-dev' part and trust the translation server
+    // to fall back to the latest stable release for that branch.
+    if (isset($data['info']['version']) && strpos($data['info']['version'], '-dev')) {
+      if (preg_match("/^(\d+\.x-\d+\.).*$/", $data['info']['version'], $matches)) {
+        // Example matches: 8.x-1.x-dev, 8.x-1.0-alpha1+5-dev => 8.x-1.x
+        $data['info']['version'] = $matches[1] . 'x';
       }
-
-      if (!empty($release['version'])) {
-        $data['info']['version'] = $release['version'];
+      elseif (preg_match("/^(\d+\.\d+\.).*$/", $data['info']['version'], $matches)) {
+        // Example match: 8.0.0-dev => 8.0.x (Drupal core)
+        $data['info']['version'] = $matches[1] . 'x';
       }
-
-      unset($release);
     }
 
     // For every project store information.
@@ -96,6 +76,7 @@ function locale_translation_build_projects() {
       'server_pattern' => isset($data['info']['interface translation server pattern']) && $data['info']['interface translation server pattern'] ? $data['info']['interface translation server pattern'] : $default_server['pattern'],
       'status' => !empty($data['project_status']) ? 1 : 0,
     );
+
     $project = (object) $data;
     $projects[$name] = $project;
 
@@ -117,8 +98,6 @@ function locale_translation_build_projects() {
 function locale_translation_project_list() {
   $projects = &drupal_static(__FUNCTION__, array());
   if (empty($projects)) {
-    module_load_include('compare.inc', 'update');
-    $config = \Drupal::config('locale.settings');
     $projects = array();
 
     $additional_whitelist = array(
diff --git a/core/modules/locale/locale.translation.inc b/core/modules/locale/locale.translation.inc
index f097602e5ad16731e6a20bc61f84ea946291bb82..0383aafd22b87011ed8a9d4d52a4338265baee2f 100644
--- a/core/modules/locale/locale.translation.inc
+++ b/core/modules/locale/locale.translation.inc
@@ -60,7 +60,7 @@ function locale_translation_get_projects(array $project_names = array()) {
     $row_count = \Drupal::service('locale.project')->countProjects();
     // https://www.drupal.org/node/1777106 is a follow-up issue to make the
     // check for possible out-of-date project information more robust.
-    if ($row_count == 0 && \Drupal::moduleHandler()->moduleExists('update')) {
+    if ($row_count == 0) {
       module_load_include('compare.inc', 'locale');
       // At least the core project should be in the database, so we build the
       // data if none are found.
diff --git a/core/modules/locale/src/Form/TranslationStatusForm.php b/core/modules/locale/src/Form/TranslationStatusForm.php
index 90d21930701b9866bcc9543bacbbafe6595dbc7d..fab56354131d8834abf92c1b7d555634934cc7b9 100644
--- a/core/modules/locale/src/Form/TranslationStatusForm.php
+++ b/core/modules/locale/src/Form/TranslationStatusForm.php
@@ -232,9 +232,6 @@ protected function prepareUpdateData(array $status) {
    * This method will produce debug information including the respective path(s)
    * based on this setting.
    *
-   * Translations for development versions are never fetched, so the debug info
-   * for that is a fixed message.
-   *
    * @param array $project_info
    *   An array which is the project information of the source.
    *
@@ -245,9 +242,6 @@ protected function createInfoString($project_info) {
     $remote_path = isset($project_info->files['remote']->uri) ? $project_info->files['remote']->uri : FALSE;
     $local_path = isset($project_info->files['local']->uri) ? $project_info->files['local']->uri : FALSE;
 
-    if (strpos($project_info->version, 'dev') !== FALSE) {
-      return $this->t('No translation files are provided for development releases.');
-    }
     if (locale_translation_use_remote_source() && $remote_path && $local_path) {
       return $this->t('File not found at %remote_path nor at %local_path', array(
         '%remote_path' => $remote_path,
diff --git a/core/modules/locale/src/Tests/LocaleConfigTranslationImportTest.php b/core/modules/locale/src/Tests/LocaleConfigTranslationImportTest.php
index a0a86842d6464adc88ca4ce2123de3cf6314723f..75966b820594991ab9e1210ea5b086cdcb7b4df5 100644
--- a/core/modules/locale/src/Tests/LocaleConfigTranslationImportTest.php
+++ b/core/modules/locale/src/Tests/LocaleConfigTranslationImportTest.php
@@ -23,7 +23,7 @@ class LocaleConfigTranslationImportTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'update', 'locale_test_translate');
+  public static $modules = array('language', 'locale_test_translate');
 
   /**
    * {@inheritdoc}
@@ -33,10 +33,6 @@ protected function setUp() {
 
     $admin_user = $this->drupalCreateUser(array('administer modules', 'administer site configuration', 'administer languages', 'access administration pages', 'administer permissions'));
     $this->drupalLogin($admin_user);
-
-    // Update module should not go out to d.o to check for updates. We override
-    // the url to an invalid update source. No update data will be found.
-    $this->config('update.settings')->set('fetch.url', (string) Url::fromRoute('<front>')->setAbsolute()->toString())->save();
   }
 
   /**
diff --git a/core/modules/locale/src/Tests/LocaleJavascriptTranslationTest.php b/core/modules/locale/src/Tests/LocaleJavascriptTranslationTest.php
index 1436527b0da011c9577ba9795ae40f719f42a11c..a87f86670ffb5d46cd60000b8af661541ab1a530 100644
--- a/core/modules/locale/src/Tests/LocaleJavascriptTranslationTest.php
+++ b/core/modules/locale/src/Tests/LocaleJavascriptTranslationTest.php
@@ -23,7 +23,7 @@ class LocaleJavascriptTranslationTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('locale');
+  public static $modules = array('locale', 'locale_test');
 
   public function testFileParsing() {
     $filename = drupal_get_path('module', 'locale') . '/tests/locale_test.js';
diff --git a/core/modules/locale/src/Tests/LocaleTranslationProjectsTest.php b/core/modules/locale/src/Tests/LocaleTranslationProjectsTest.php
index aa8c955e92ff2aa2d4c8c00bff8d0ea0de43c422..79b7f1f42b5915d981d0a1cc30869c052dc17300 100644
--- a/core/modules/locale/src/Tests/LocaleTranslationProjectsTest.php
+++ b/core/modules/locale/src/Tests/LocaleTranslationProjectsTest.php
@@ -19,7 +19,7 @@ class LocaleTranslationProjectsTest extends KernelTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = ['locale'];
+  public static $modules = ['locale', 'locale_test'];
 
   /**
    * The module handler used in this test.
@@ -43,6 +43,7 @@ protected function setUp() {
 
     $this->moduleHandler = $this->container->get('module_handler');
     $this->projectStorage = $this->container->get('locale.project');
+    \Drupal::state()->set('locale.remove_core_project', TRUE);
   }
 
 
diff --git a/core/modules/locale/src/Tests/LocaleUpdateBase.php b/core/modules/locale/src/Tests/LocaleUpdateBase.php
index 5f5408b68e61610a3fa9e41f027290f628f7c0a6..5b03e9539a671a83205adf3056328ad252a23c4b 100644
--- a/core/modules/locale/src/Tests/LocaleUpdateBase.php
+++ b/core/modules/locale/src/Tests/LocaleUpdateBase.php
@@ -50,7 +50,7 @@ abstract class LocaleUpdateBase extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('update', 'update_test', 'locale', 'locale_test');
+  public static $modules = array('locale', 'locale_test');
 
   /**
    * {@inheritdoc}
@@ -58,11 +58,6 @@ abstract class LocaleUpdateBase extends WebTestBase {
   protected function setUp() {
     parent::setUp();
 
-    // Update module should not go out to d.o to check for updates. We override
-    // the url to the default update_test xml path. But without providing
-    // a mock xml file, no update data will be found.
-    $this->config('update.settings')->set('fetch.url', Url::fromRoute('update_test.update_test', [], ['absolute' => TRUE])->toString())->save();
-
     // Setup timestamps to identify old and new translation sources.
     $this->timestampOld = REQUEST_TIME - 300;
     $this->timestampMedium = REQUEST_TIME - 200;
@@ -186,6 +181,7 @@ protected function setTranslationFiles() {
     // A flag is set to let the locale_test module replace the project data with
     // a set of test projects which match the below project files.
     \Drupal::state()->set('locale.test_projects_alter', TRUE);
+    \Drupal::state()->set('locale.remove_core_project', FALSE);
 
     // Setup the environment.
     $public_path = PublicStream::basePath();
diff --git a/core/modules/locale/src/Tests/LocaleUpdateDevelopmentReleaseTest.php b/core/modules/locale/src/Tests/LocaleUpdateDevelopmentReleaseTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..09ab884b8cba6448050dcc72edd1dacf51963ad5
--- /dev/null
+++ b/core/modules/locale/src/Tests/LocaleUpdateDevelopmentReleaseTest.php
@@ -0,0 +1,36 @@
+<?php
+
+/**
+ * @file
+ * Contains \Drupal\locale\Tests\LocaleUpdateDevelopmentReleaseTest.
+ */
+
+namespace Drupal\locale\Tests;
+
+use Drupal\simpletest\WebTestBase;
+
+/**
+ * Test for proper version fallback in case of a development release.
+ *
+ * @group language
+ */
+class LocaleUpdateDevelopmentReleaseTest extends WebTestBase {
+
+  public static $modules = array('locale', 'locale_test_development_release');
+
+  protected function setUp() {
+    parent::setUp();
+    module_load_include('compare.inc', 'locale');
+    $admin_user = $this->drupalCreateUser(array('administer modules', 'administer languages', 'access administration pages', 'translate interface'));
+    $this->drupalLogin($admin_user);
+    $this->drupalPostForm('admin/config/regional/language/add', array('predefined_langcode' => 'hu'), t('Add language'));
+  }
+
+  public function testLocaleUpdateDevelopmentRelease() {
+    $projects = locale_translation_build_projects();
+    $this->verbose($projects['drupal']->info['version']);
+    $this->assertEqual($projects['drupal']->info['version'], '8.0.x', 'The branch of the core dev release.');
+    $this->verbose($projects['contrib']->info['version']);
+    $this->assertEqual($projects['contrib']->info['version'], '12.x-10.x', 'The branch of the contrib module dev release.');
+  }
+}
diff --git a/core/modules/locale/src/Tests/LocaleUpdateInterfaceTest.php b/core/modules/locale/src/Tests/LocaleUpdateInterfaceTest.php
index a66ff48b91a878ed3d68cf5c40224606837770e7..5d67537687db8e3601bcf39fb560b1ba94ef1f0b 100644
--- a/core/modules/locale/src/Tests/LocaleUpdateInterfaceTest.php
+++ b/core/modules/locale/src/Tests/LocaleUpdateInterfaceTest.php
@@ -7,6 +7,7 @@
 
 namespace Drupal\locale\Tests;
 
+use Drupal\Component\Render\FormattableMarkup;
 use Drupal\Component\Utility\SafeMarkup;
 
 /**
@@ -87,8 +88,12 @@ public function testInterface() {
     $this->assertRaw(t('Missing translations for: @languages. See the <a href=":updates">Available translation updates</a> page for more information.', array('@languages' => t('German'), ':updates' => \Drupal::url('locale.translate_status'))), 'Missing translations message');
     $this->drupalGet('admin/reports/translations');
     $this->assertText(t('Missing translations for one project'), 'No translations found');
-    $this->assertText(SafeMarkup::format('@module (@version). @info', array('@module' => 'Locale test translate', '@version' => '1.3-dev', '@info' => t('No translation files are provided for development releases.'))), 'Release details');
-    $this->assertText(t('No translation files are provided for development releases.'), 'Release info');
+    $release_details = new FormattableMarkup('@module (@version). @info', [
+      '@module' => 'Locale test translate',
+      '@version' => '1.3-dev',
+      '@info' => t('File not found at %local_path', array('%local_path' => 'core/modules/locale/tests/test.de.po'))
+    ]);
+    $this->assertRaw($release_details->__toString(), 'Release details');
 
     // Override Drupal core translation status as 'no translations found'.
     $status = locale_translation_get_status();
diff --git a/core/modules/locale/src/Tests/LocaleUpdateNotDevelopmentReleaseTest.php b/core/modules/locale/src/Tests/LocaleUpdateNotDevelopmentReleaseTest.php
deleted file mode 100644
index 076380914f2a3e0dd1cf5317ca4378efe765ec97..0000000000000000000000000000000000000000
--- a/core/modules/locale/src/Tests/LocaleUpdateNotDevelopmentReleaseTest.php
+++ /dev/null
@@ -1,83 +0,0 @@
-<?php
-
-/**
- * @file
- * Contains \Drupal\locale\Tests\LocaleUpdateNotDevelopmentReleaseTest.
- */
-
-namespace Drupal\locale\Tests;
-
-use Drupal\simpletest\WebTestBase;
-
-/**
- * Test for finding the first available normal core release version,
- * in case of core is a development release.
- *
- * @group language
- */
-class LocaleUpdateNotDevelopmentReleaseTest extends WebTestBase {
-
-  public static $modules = array('update', 'locale', 'locale_test_not_development_release');
-
-  protected function setUp() {
-    parent::setUp();
-    module_load_include('compare.inc', 'locale');
-    $admin_user = $this->drupalCreateUser(array('administer modules', 'administer languages', 'access administration pages', 'translate interface'));
-    $this->drupalLogin($admin_user);
-    $this->drupalPostForm('admin/config/regional/language/add', array('predefined_langcode' => 'hu'), t('Add language'));
-  }
-
-  public function testLocaleUpdateNotDevelopmentRelease() {
-    // Set available Drupal releases for test.
-    $available = array(
-      'title' => 'Drupal core',
-      'short_name' => 'drupal',
-      'type' => 'project_core',
-      'api_version' => '8.x',
-      'project_status' => 'unsupported',
-      'link' => 'https://www.drupal.org/project/drupal',
-      'terms' => '',
-      'releases' => array(
-        '8.0.0-alpha110' => array(
-          'name'          => 'drupal 8.0.0-alpha110',
-          'version'       => '8.0.0-alpha110',
-          'tag'           => '8.0.0-alpha110',
-          'version_major' => '8',
-          'version_minor' => '0',
-          'version_patch' => '0',
-          'version_extra' => 'alpha110',
-          'status'        => 'published',
-          'release_link'  => 'https://www.drupal.org/node/2316617',
-          'download_link' => 'http://ftp.drupal.org/files/projects/drupal-8.0.0-alpha110.tar.gz',
-          'date'          => '1407344628',
-          'mdhash'        => '9d71afdd0ce541f2ff5ca2fbbca00df7',
-          'filesize'      => '9172832',
-          'files'         => '',
-          'terms'         => array(),
-        ),
-        '8.0.0-alpha100' => array(
-          'name'          => 'drupal 8.0.0-alpha100',
-          'version'       => '8.0.0-alpha100',
-          'tag'           => '8.0.0-alpha100',
-          'version_major' => '8',
-          'version_minor' => '0',
-          'version_patch' => '0',
-          'version_extra' => 'alpha100',
-          'status'        => 'published',
-          'release_link'  => 'https://www.drupal.org/node/2316617',
-          'download_link' => 'http://ftp.drupal.org/files/projects/drupal-8.0.0-alpha100.tar.gz',
-          'date'          => '1407344628',
-          'mdhash'        => '9d71afdd0ce541f2ff5ca2fbbca00df7',
-          'filesize'      => '9172832',
-          'files'         => '',
-          'terms'         => array(),
-        ),
-      ),
-    );
-    $available['last_fetch'] = REQUEST_TIME;
-    \Drupal::keyValueExpirable('update_available_releases')->setWithExpire('drupal', $available, 10);
-    $projects = locale_translation_build_projects();
-    $this->verbose($projects['drupal']->info['version']);
-    $this->assertEqual($projects['drupal']->info['version'], '8.0.0-alpha110', 'The first release with the same major release number which is not a development release.');
-  }
-}
diff --git a/core/modules/locale/tests/modules/locale_test/locale_test.module b/core/modules/locale/tests/modules/locale_test/locale_test.module
index 2d8bfe601ee9435bdc383762bed16653fd45d295..83909d30e1e4302273673aa07ca53dda691cd5f5 100644
--- a/core/modules/locale/tests/modules/locale_test/locale_test.module
+++ b/core/modules/locale/tests/modules/locale_test/locale_test.module
@@ -45,6 +45,10 @@ function locale_test_locale_translation_projects_alter(&$projects) {
   // translation update system will not go out to l.d.o to check.
   $projects['drupal']['server_pattern'] = 'translations://';
 
+  if (\Drupal::state()->get('locale.remove_core_project')) {
+    unset($projects['drupal']);
+  }
+
   if (\Drupal::state()->get('locale.test_projects_alter')) {
 
     // Instead of the default ftp.drupal.org we use the file system of the test
diff --git a/core/modules/locale/tests/modules/locale_test_development_release/locale_test_development_release.info.yml b/core/modules/locale/tests/modules/locale_test_development_release/locale_test_development_release.info.yml
new file mode 100644
index 0000000000000000000000000000000000000000..fd1481ca16daa956cdf338ae565e06c1371d71b1
--- /dev/null
+++ b/core/modules/locale/tests/modules/locale_test_development_release/locale_test_development_release.info.yml
@@ -0,0 +1,7 @@
+name: 'Locale Test Development Release'
+type: module
+description: 'Helper module to test the behaviour when the core verison is a development release.'
+package: Testing
+version: VERSION
+core: 8.x
+hidden: true
diff --git a/core/modules/locale/tests/modules/locale_test_development_release/locale_test_development_release.module b/core/modules/locale/tests/modules/locale_test_development_release/locale_test_development_release.module
new file mode 100644
index 0000000000000000000000000000000000000000..deedf075b1db6b8fe32897d2df39ea331f4008e3
--- /dev/null
+++ b/core/modules/locale/tests/modules/locale_test_development_release/locale_test_development_release.module
@@ -0,0 +1,42 @@
+<?php
+
+/**
+ * @file
+ * Simulate a Drupal version.
+ */
+
+use Drupal\Core\Extension\Extension;
+
+/**
+ * Implements hook_system_info_alter().
+ *
+ * Change the core version number to a development one for testing.
+ * 8.0.0-alpha102-dev is the simulated version.
+ */
+function locale_test_development_release_system_info_alter(&$info, Extension $file, $type) {
+  if (isset($info['package']) && $info['package'] == 'Core') {
+    $info['version'] = '8.0.0-alpha102-dev';
+  }
+}
+
+/**
+ * Implements hook_locale_translation_projects_alter().
+ *
+ * Add a contrib module with a dev release to list of translatable modules.
+ */
+function locale_test_development_release_locale_translation_projects_alter(&$projects) {
+  $projects['contrib'] = [
+    'name' => 'contrib',
+    'info' => array(
+      'name' => 'Contributed module',
+      'package' => 'Other',
+      'version' => '12.x-10.4-unstable11+14-dev',
+      'project' => 'contrib_module',
+      'datestamp' => '0',
+      '_info_file_ctime' => 1442933959,
+    ),
+    'datestamp' => '0',
+    'project_type' => 'module',
+    'project_status' => TRUE,
+  ];
+}
diff --git a/core/modules/locale/tests/modules/locale_test_not_development_release/locale_test_not_development_release.info.yml b/core/modules/locale/tests/modules/locale_test_not_development_release/locale_test_not_development_release.info.yml
deleted file mode 100644
index 7acf9a02b8e148fbfc82ebbe2b625b102b3bcf19..0000000000000000000000000000000000000000
--- a/core/modules/locale/tests/modules/locale_test_not_development_release/locale_test_not_development_release.info.yml
+++ /dev/null
@@ -1,7 +0,0 @@
-name: 'Locale Test Not Development Release'
-type: module
-description: 'The first release with the same major release number which is not a development release.'
-package: Testing
-version: VERSION
-core: 8.x
-hidden: true
diff --git a/core/modules/locale/tests/modules/locale_test_not_development_release/locale_test_not_development_release.module b/core/modules/locale/tests/modules/locale_test_not_development_release/locale_test_not_development_release.module
deleted file mode 100644
index d35ce32b46683ee386555a539964faf755b04403..0000000000000000000000000000000000000000
--- a/core/modules/locale/tests/modules/locale_test_not_development_release/locale_test_not_development_release.module
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-
-/**
- * @file
- * Simulate a Drupal version.
- */
-
-use Drupal\Core\Extension\Extension;
-
-/**
- * Implements hook_system_info_alter().
- *
- * Change the core version number to a development one for testing.
- * 8.0.0-alpha102-dev is the simulated version.
- */
-function locale_test_not_development_release_system_info_alter(&$info, Extension $file, $type) {
-  if (isset($info['package']) && $info['package'] == 'Core') {
-    $info['version'] = '8.0.0-alpha102-dev';
-  }
-}
diff --git a/core/modules/path/src/Tests/PathLanguageTest.php b/core/modules/path/src/Tests/PathLanguageTest.php
index 67463f2becfa6bc0990b4cf93ebe586152e6cfe1..a042d83e9065eb6f34b0ef4cc89df641e5817f59 100644
--- a/core/modules/path/src/Tests/PathLanguageTest.php
+++ b/core/modules/path/src/Tests/PathLanguageTest.php
@@ -19,7 +19,7 @@ class PathLanguageTest extends PathTestBase {
    *
    * @var array
    */
-  public static $modules = array('path', 'locale', 'content_translation');
+  public static $modules = array('path', 'locale', 'locale_test', 'content_translation');
 
   /**
    * An user with permissions to administer content types.
diff --git a/core/modules/path/src/Tests/PathLanguageUiTest.php b/core/modules/path/src/Tests/PathLanguageUiTest.php
index 55b3103b6f8c7f90efb649561a636cfc724fe7bc..04ee18812ac5b7b085bb202640af246344f23202 100644
--- a/core/modules/path/src/Tests/PathLanguageUiTest.php
+++ b/core/modules/path/src/Tests/PathLanguageUiTest.php
@@ -19,7 +19,7 @@ class PathLanguageUiTest extends PathTestBase {
    *
    * @var array
    */
-  public static $modules = array('path', 'locale');
+  public static $modules = array('path', 'locale', 'locale_test');
 
   protected function setUp() {
     parent::setUp();
diff --git a/core/modules/toolbar/src/Tests/ToolbarMenuTranslationTest.php b/core/modules/toolbar/src/Tests/ToolbarMenuTranslationTest.php
index c0db4b2fae8c9ed2109010e218698bc52f69324b..c6c7767ab7e19ee9a1d3a8f50fd9d4f2fe7ba556 100644
--- a/core/modules/toolbar/src/Tests/ToolbarMenuTranslationTest.php
+++ b/core/modules/toolbar/src/Tests/ToolbarMenuTranslationTest.php
@@ -28,7 +28,7 @@ class ToolbarMenuTranslationTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('toolbar', 'toolbar_test', 'locale');
+  public static $modules = array('toolbar', 'toolbar_test', 'locale', 'locale_test');
 
   protected function setUp() {
     parent::setUp();