diff --git a/changelogs/unreleased/23036-replace-all-spinach-tests-with-rspec-feature-tests.yml b/changelogs/unreleased/23036-replace-all-spinach-tests-with-rspec-feature-tests.yml
new file mode 100644
index 0000000000000000000000000000000000000000..b350b27d863a4dd8f192ccbbcb31ac4c467cb9d0
--- /dev/null
+++ b/changelogs/unreleased/23036-replace-all-spinach-tests-with-rspec-feature-tests.yml
@@ -0,0 +1,4 @@
+---
+title: Replace 'starred_projects.feature' spinach test with an rspec analog
+merge_request: 11752
+author: blackst0ne
diff --git a/features/dashboard/starred_projects.feature b/features/dashboard/starred_projects.feature
deleted file mode 100644
index 9dfd2fbab9cb2a43e3364f25ccd22b5185259d20..0000000000000000000000000000000000000000
--- a/features/dashboard/starred_projects.feature
+++ /dev/null
@@ -1,12 +0,0 @@
-@dashboard
-Feature: Dashboard Starred Projects
-  Background:
-    Given I sign in as a user
-    And public project "Community"
-    And I starred project "Community"
-    And I own project "Shop"
-    And I visit dashboard starred projects page
-
-  Scenario: I should see projects list
-    Then I should see project "Community"
-    And I should not see project "Shop"
diff --git a/spec/features/dashboard/projects_spec.rb b/spec/features/dashboard/projects_spec.rb
index 01351548a99e67a8a9594a94fb35b319594cd333..fa3435ab719156fa403ff9af62ab7d7e30b52c75 100644
--- a/spec/features/dashboard/projects_spec.rb
+++ b/spec/features/dashboard/projects_spec.rb
@@ -3,10 +3,11 @@ require 'spec_helper'
 RSpec.describe 'Dashboard Projects', feature: true do
   let(:user) { create(:user) }
   let(:project) { create(:project, name: "awesome stuff") }
+  let(:project2) { create(:project, :public, name: 'Community project') }
 
   before do
     project.team << [user, :developer]
-    login_as user
+    login_as(user)
   end
 
   it 'shows the project the user in a member of in the list' do
@@ -14,6 +15,17 @@ RSpec.describe 'Dashboard Projects', feature: true do
     expect(page).to have_content('awesome stuff')
   end
 
+  context 'when on Starred projects tab' do
+    it 'shows only starred projects' do
+      user.toggle_star(project2)
+
+      visit(starred_dashboard_projects_path)
+
+      expect(page).not_to have_content(project.name)
+      expect(page).to have_content(project2.name)
+    end
+  end
+
   describe "with a pipeline", redis: true do
     let!(:pipeline) {  create(:ci_pipeline, project: project, sha: project.commit.sha) }