diff --git a/navigation_extra_tools.post_update.php b/navigation_extra_tools.post_update.php
index ed567693f988e459efb7055b65beea5fd59ba839..dd6018591ab3f2b80d0eb90b6c4d88d074d87abb 100644
--- a/navigation_extra_tools.post_update.php
+++ b/navigation_extra_tools.post_update.php
@@ -8,12 +8,13 @@
 use Drupal\user\Entity\Role;
 
 /**
- * Adds the 'access navigation extra tools' permission for relevant roles.
+ * Adds cache flushing and cron permissions for relevant roles.
  */
 function navigation_extra_tools_post_update_update_permissions(): void {
   foreach (Role::loadMultiple() as $role) {
     if ($role->hasPermission('administer site configuration')) {
-      $role->grantPermission('access navigation extra tools')->save();
+      $role->grantPermission('access navigation extra tools cache flushing')->save();
+      $role->grantPermission('access navigation extra tools cron')->save();
     }
   }
 }
diff --git a/navigation_extra_tools.routing.yml b/navigation_extra_tools.routing.yml
index 194abbb22145ba5c596b626922745256a6323c3e..6f8f7eef117d502b8d0a75cec069ed1a72fc4eca 100644
--- a/navigation_extra_tools.routing.yml
+++ b/navigation_extra_tools.routing.yml
@@ -4,7 +4,7 @@ navigation_extra_tools.overview:
     _controller: '\Drupal\system\Controller\SystemController::systemAdminMenuBlockPage'
     _title: 'Tools'
   requirements:
-    _permission: 'access navigation extra tools cache flushing+access navigation extra tools cron'
+    _permission: 'access navigation'
 
 navigation_extra_tools.flush:
   path: '/admin/flush'
diff --git a/tests/src/Functional/NavigationExtraToolsDevelTest.php b/tests/src/Functional/NavigationExtraToolsDevelTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..c467d239837ac927e8f0b16ba622a02f7d57c756
--- /dev/null
+++ b/tests/src/Functional/NavigationExtraToolsDevelTest.php
@@ -0,0 +1,69 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Drupal\Tests\navigation_extra_tools\Functional;
+
+use Drupal\Tests\BrowserTestBase;
+use Drupal\user\UserInterface;
+
+// cSpell:ignore toolshelp
+
+/**
+ * Test description.
+ *
+ * @group navigation_extra_tools
+ */
+final class NavigationExtraToolsDevelTest extends BrowserTestBase {
+
+  /**
+   * {@inheritdoc}
+   */
+  protected $defaultTheme = 'stark';
+
+  /**
+   * {@inheritdoc}
+   */
+  protected static $modules = [
+    'navigation_extra_tools',
+    'devel',
+  ];
+
+  /**
+   * A test user with permission to access the administrative toolbar.
+   *
+   * @var \Drupal\user\UserInterface
+   */
+  protected UserInterface $adminUser;
+
+  /**
+   * {@inheritdoc}
+   */
+  protected function setUp(): void {
+    parent::setUp();
+    // Create and log in an administrative user.
+    $this->adminUser = $this->drupalCreateUser([
+      'access navigation',
+      'access administration pages',
+      'administer site configuration',
+    ]);
+    $this->drupalLogin($this->adminUser);
+  }
+
+  /**
+   * Test the Development menu.
+   */
+  public function testDevelopmentMenu(): void {
+    // Test that Development menu now present under Tools.
+    $this->assertSession()->elementExists('xpath', '//li[@id="navigation-link-navigation-extra-toolshelp"]/div/ul/li[contains(@class, "toolbar-menu__item--level-1")]/button[contains(@class, "toolbar-button")]/span[text() = "Development"]');
+    // Test that "Devel settings" exists as level 2 menu under Tools.
+    $this->assertSession()->elementExists('xpath', '//li[@id="navigation-link-navigation-extra-toolshelp"]/div/ul/li/ul/li[contains(@class, "toolbar-menu__item--level-2")]/a[contains(@class, "toolbar-menu__link--2") and text() = "Devel settings"]');
+    // Test that "Config editor" exists as level 2 menu under Tools.
+    $this->assertSession()->elementExists('xpath', '//li[@id="navigation-link-navigation-extra-toolshelp"]/div/ul/li/ul/li[contains(@class, "toolbar-menu__item--level-2")]/a[contains(@class, "toolbar-menu__link--2") and text() = "Config editor"]');
+    // Test that "Reinstall modules" exists as level 2 menu under Tools.
+    $this->assertSession()->elementExists('xpath', '//li[@id="navigation-link-navigation-extra-toolshelp"]/div/ul/li/ul/li[contains(@class, "toolbar-menu__item--level-2")]/a[contains(@class, "toolbar-menu__link--2") and text() = "Reinstall modules"]');
+    // Test that "Rebuild menu" exists as level 2 menu under Tools.
+    $this->assertSession()->elementExists('xpath', '//li[@id="navigation-link-navigation-extra-toolshelp"]/div/ul/li/ul/li[contains(@class, "toolbar-menu__item--level-2")]/a[contains(@class, "toolbar-menu__link--2") and text() = "Rebuild menu"]');
+  }
+
+}
diff --git a/tests/src/Functional/NavigationExtraToolsMenuTest.php b/tests/src/Functional/NavigationExtraToolsMenuTest.php
index 77ffe544dd0940cecdd7ceb35240e11b7b791b24..48a80016760a6e93484ccb475edf80b03322a425 100644
--- a/tests/src/Functional/NavigationExtraToolsMenuTest.php
+++ b/tests/src/Functional/NavigationExtraToolsMenuTest.php
@@ -25,7 +25,6 @@ final class NavigationExtraToolsMenuTest extends BrowserTestBase {
    * {@inheritdoc}
    */
   protected static $modules = [
-    'navigation',
     'navigation_extra_tools',
   ];
 
@@ -45,7 +44,6 @@ final class NavigationExtraToolsMenuTest extends BrowserTestBase {
     $this->adminUser = $this->drupalCreateUser([
       'access navigation',
       'access administration pages',
-      'administer site configuration',
       'administer software updates',
       'access navigation extra tools cache flushing',
       'access navigation extra tools cron',
@@ -177,22 +175,9 @@ final class NavigationExtraToolsMenuTest extends BrowserTestBase {
   /**
    * Test the Development menu.
    */
-  public function testDevelopmentMenu(): void {
+  public function testDevelopmentMenuNotEnabled(): void {
     // Check Development menu not shown when devel not enabled.
     $this->assertSession()->elementNotExists('xpath', '//li[@id="navigation-link-navigation-extra-toolshelp"]/div/ul/li[contains(@class, "toolbar-menu__item--level-1")]/button[contains(@class, "toolbar-button")]/span[text() = "Development"]');
-    $success = $this->container->get('module_installer')->install(['devel'], TRUE);
-    $this->assertTrue($success, 'Enabled module devel');
-    $this->drupalGet('admin');
-    // Test that Development menu now present under Tools.
-    $this->assertSession()->elementExists('xpath', '//li[@id="navigation-link-navigation-extra-toolshelp"]/div/ul/li[contains(@class, "toolbar-menu__item--level-1")]/button[contains(@class, "toolbar-button")]/span[text() = "Development"]');
-    // Test that "Devel settings" exists as level 2 menu under Tools.
-    $this->assertSession()->elementExists('xpath', '//li[@id="navigation-link-navigation-extra-toolshelp"]/div/ul/li/ul/li[contains(@class, "toolbar-menu__item--level-2")]/a[contains(@class, "toolbar-menu__link--2") and text() = "Devel settings"]');
-    // Test that "Config editor" exists as level 2 menu under Tools.
-    $this->assertSession()->elementExists('xpath', '//li[@id="navigation-link-navigation-extra-toolshelp"]/div/ul/li/ul/li[contains(@class, "toolbar-menu__item--level-2")]/a[contains(@class, "toolbar-menu__link--2") and text() = "Config editor"]');
-    // Test that "Reinstall modules" exists as level 2 menu under Tools.
-    $this->assertSession()->elementExists('xpath', '//li[@id="navigation-link-navigation-extra-toolshelp"]/div/ul/li/ul/li[contains(@class, "toolbar-menu__item--level-2")]/a[contains(@class, "toolbar-menu__link--2") and text() = "Reinstall modules"]');
-    // Test that "Rebuild menu" exists as level 2 menu under Tools.
-    $this->assertSession()->elementExists('xpath', '//li[@id="navigation-link-navigation-extra-toolshelp"]/div/ul/li/ul/li[contains(@class, "toolbar-menu__item--level-2")]/a[contains(@class, "toolbar-menu__link--2") and text() = "Rebuild menu"]');
   }
 
 }