diff --git a/core/modules/system/src/Tests/Form/ModulesListFormWebTest.php b/core/modules/system/src/Tests/Form/ModulesListFormWebTest.php
index 921a27d..54d723c 100644
--- a/core/modules/system/src/Tests/Form/ModulesListFormWebTest.php
+++ b/core/modules/system/src/Tests/Form/ModulesListFormWebTest.php
@@ -51,4 +51,29 @@ public function testModuleListForm() {
     $this->assertText('simpletest');
   }
 
+  public function testModulesListFormWithInvalidInfoFile() {
+    $broken_info_yml =<<<BROKEN
+name: Module With Broken Info file
+type: module
+BROKEN;
+    $path = \Drupal::service('site.path') . "/modules/broken";
+    mkdir($path, 0777, true);
+    file_put_contents("$path/broken.info.yml", $broken_info_yml);
+
+    $this->drupalLogin(
+      $this->drupalCreateUser(
+        array('administer modules', 'administer permissions')
+      )
+    );
+    $this->drupalGet('admin/modules');
+    $this->assertResponse('200');
+
+    // Confirm that the error message is shown.
+    $this->assertText('Modules could not be listed due to an error: "Missing required keys (core) in ' . $path . '/broken.info.yml"');
+
+    // Check that the module filter text box is available.
+    $this->assertFieldByXPath('//input[@name="text"]');
+
+  }
+
 }
