diff --git a/spec/requests/api/commit_statuses_spec.rb b/spec/requests/api/commit_statuses_spec.rb
index 33c97a947934d3dabf63c43989497dd2afb7f61f..6d026c2094058cc8a60aa61589a179f4bfdff01d 100644
--- a/spec/requests/api/commit_statuses_spec.rb
+++ b/spec/requests/api/commit_statuses_spec.rb
@@ -14,14 +14,14 @@
     let(:get_url) { "/projects/#{project.id}/repository/commits/#{sha}/statuses" }
 
     context 'ci commit exists' do
-      let!(:master) do
+      let_it_be(:master) do
         project.ci_pipelines.build(source: :push, sha: commit.id, ref: 'master', protected: false).tap do |p|
           p.ensure_project_iid! # Necessary to avoid cross-database modification error
           p.save!
         end
       end
 
-      let!(:develop) do
+      let_it_be(:develop) do
         project.ci_pipelines.build(source: :push, sha: commit.id, ref: 'develop', protected: false).tap do |p|
           p.ensure_project_iid! # Necessary to avoid cross-database modification error
           p.save!
@@ -35,12 +35,12 @@ def create_status(pipeline, opts = {})
           create(:commit_status, { pipeline: pipeline, ref: pipeline.ref }.merge(opts))
         end
 
-        let!(:status1) { create_status(master, status: 'running', retried: true) }
-        let!(:status2) { create_status(master, name: 'coverage', status: 'pending', retried: true) }
-        let!(:status3) { create_status(develop, status: 'running', allow_failure: true) }
-        let!(:status4) { create_status(master, name: 'coverage', status: 'success') }
-        let!(:status5) { create_status(develop, name: 'coverage', status: 'success') }
-        let!(:status6) { create_status(master, status: 'success', stage: 'deploy') }
+        let_it_be(:status1) { create_status(master, status: 'running', retried: true) }
+        let_it_be(:status2) { create_status(master, name: 'coverage', status: 'pending', retried: true) }
+        let_it_be(:status3) { create_status(develop, status: 'running', allow_failure: true) }
+        let_it_be(:status4) { create_status(master, name: 'coverage', status: 'success') }
+        let_it_be(:status5) { create_status(develop, name: 'coverage', status: 'success') }
+        let_it_be(:status6) { create_status(master, status: 'success', stage: 'deploy') }
 
         context 'latest commit statuses' do
           before do
@@ -52,8 +52,7 @@ def create_status(pipeline, opts = {})
 
             expect(response).to include_pagination_headers
             expect(json_response).to be_an Array
-            expect(statuses_id).to contain_exactly(status3.id, status4.id, status5.id, status6.id)
-            json_response.sort_by! { |status| status['id'] }
+            expect(statuses_id).to eq([status3.id, status4.id, status5.id, status6.id].sort)
             expect(json_response.map { |status| status['allow_failure'] }).to eq([true, false, false, false])
           end
         end
@@ -73,7 +72,7 @@ def create_status(pipeline, opts = {})
 
         context 'Get all commit statuses' do
           let(:params) { { all: 1 } }
-          let(:expected_statuses) { [status1.id, status2.id, status3.id, status4.id, status5.id, status6.id] }
+          let(:expected_statuses) { (develop.statuses.ids + master.statuses.ids).sort }
 
           it_behaves_like 'get commit statuses'
         end
@@ -93,42 +92,42 @@ def create_status(pipeline, opts = {})
 
         context 'latest commit statuses for specific ref' do
           let(:params) { { ref: 'develop' } }
-          let(:expected_statuses) { [status3.id, status5.id] }
+          let(:expected_statuses) { [status3.id, status5.id].sort }
 
           it_behaves_like 'get commit statuses'
         end
 
         context 'latest commit statues for specific name' do
           let(:params) { { name: 'coverage' } }
-          let(:expected_statuses) { [status4.id, status5.id] }
+          let(:expected_statuses) { [status4.id, status5.id].sort }
 
           it_behaves_like 'get commit statuses'
         end
 
         context 'latest commit statuses for specific pipeline' do
           let(:params) { { pipeline_id: develop.id } }
-          let(:expected_statuses) { [status3.id, status5.id] }
+          let(:expected_statuses) { [status3.id, status5.id].sort }
 
           it_behaves_like 'get commit statuses'
         end
 
         context 'return commit statuses sort by desc id' do
           let(:params) { { all: 1, sort: "desc" } }
-          let(:expected_statuses) { [status6.id, status5.id, status4.id, status3.id, status2.id, status1.id] }
+          let(:expected_statuses) { (develop.statuses.ids + master.statuses.ids).sort.reverse }
 
           it_behaves_like 'get commit statuses'
         end
 
         context 'return commit statuses sort by desc pipeline_id' do
           let(:params) { { all: 1, order_by: "pipeline_id", sort: "desc" } }
-          let(:expected_statuses) { [status3.id, status5.id, status1.id, status2.id, status4.id, status6.id] }
+          let(:expected_statuses) { develop.statuses.order(id: :asc).ids + master.statuses.order(id: :asc).ids }
 
           it_behaves_like 'get commit statuses'
         end
 
         context 'return commit statuses sort by asc pipeline_id' do
           let(:params) { { all: 1, order_by: "pipeline_id" } }
-          let(:expected_statuses) { [status1.id, status2.id, status4.id, status6.id, status3.id, status5.id] }
+          let(:expected_statuses) { master.statuses.order(id: :asc).ids + develop.statuses.order(id: :asc).ids }
 
           it_behaves_like 'get commit statuses'
         end