diff --git a/spec/controllers/disputes/strikes_controller_spec.rb b/spec/controllers/disputes/strikes_controller_spec.rb
deleted file mode 100644
index f6d28fc09a..0000000000
--- a/spec/controllers/disputes/strikes_controller_spec.rb
+++ /dev/null
@@ -1,32 +0,0 @@
-# frozen_string_literal: true
-
-require 'rails_helper'
-
-RSpec.describe Disputes::StrikesController do
-  render_views
-
-  before { sign_in current_user, scope: :user }
-
-  describe '#show' do
-    let(:current_user) { Fabricate(:user) }
-    let(:strike) { Fabricate(:account_warning, target_account: current_user.account) }
-
-    before do
-      get :show, params: { id: strike.id }
-    end
-
-    context 'when meant for the user' do
-      it 'returns http success' do
-        expect(response).to have_http_status(:success)
-      end
-    end
-
-    context 'when meant for a different user' do
-      let(:strike) { Fabricate(:account_warning) }
-
-      it 'returns http forbidden' do
-        expect(response).to have_http_status(403)
-      end
-    end
-  end
-end
diff --git a/spec/requests/disputes/strikes_spec.rb b/spec/requests/disputes/strikes_spec.rb
new file mode 100644
index 0000000000..48685893c2
--- /dev/null
+++ b/spec/requests/disputes/strikes_spec.rb
@@ -0,0 +1,22 @@
+# frozen_string_literal: true
+
+require 'rails_helper'
+
+RSpec.describe 'Disputes Strikes' do
+  before { sign_in current_user }
+
+  describe 'GET /disputes/strikes/:id' do
+    let(:current_user) { Fabricate(:user) }
+
+    context 'when meant for a different user' do
+      let(:strike) { Fabricate(:account_warning) }
+
+      it 'returns http forbidden' do
+        get disputes_strike_path(strike)
+
+        expect(response)
+          .to have_http_status(403)
+      end
+    end
+  end
+end
diff --git a/spec/system/disputes/strikes_spec.rb b/spec/system/disputes/strikes_spec.rb
new file mode 100644
index 0000000000..d2b6b08c46
--- /dev/null
+++ b/spec/system/disputes/strikes_spec.rb
@@ -0,0 +1,27 @@
+# frozen_string_literal: true
+
+require 'rails_helper'
+
+RSpec.describe 'Disputes Strikes' do
+  before { sign_in(current_user) }
+
+  describe 'viewing strike disputes' do
+    let(:current_user) { Fabricate(:user) }
+    let!(:strike) { Fabricate(:account_warning, target_account: current_user.account) }
+
+    it 'shows a list of strikes and details for each' do
+      visit disputes_strikes_path
+      expect(page)
+        .to have_title(I18n.t('settings.strikes'))
+
+      find('.strike-entry').click
+      expect(page)
+        .to have_title(strike_page_title)
+        .and have_content(strike.text)
+    end
+
+    def strike_page_title
+      I18n.t('disputes.strikes.title', action: I18n.t(strike.action, scope: 'disputes.strikes.title_actions'), date: I18n.l(strike.created_at.to_date))
+    end
+  end
+end