diff --git a/test/replication/transaction.result b/test/replication/transaction.result
index 01f8f5e5ba33beb8d708954bd42555a043a1cb3c..3c07d4ec414f694047e92b6fd9728d7fcd27b5c0 100644
--- a/test/replication/transaction.result
+++ b/test/replication/transaction.result
@@ -62,6 +62,11 @@ test_run:cmd("switch replica")
 ---
 - true
 ...
+-- check replication status
+test_run:wait_upstream(1,{status = 'stopped', message_re = 'Duplicate key'})
+---
+- true
+...
 -- nothing was applied
 v1[1] == box.info.vclock[1]
 ---
@@ -73,16 +78,6 @@ box.space.test:select()
   - [2, 'm']
   - [4, 'r']
 ...
--- check replication status
-box.info.replication[1].upstream.status
----
-- stopped
-...
-box.info.replication[1].upstream.message
----
-- Duplicate key exists in unique index "pk" in space "test" with old tuple - [4, "r"]
-  and new tuple - [4, "m"]
-...
 -- set conflict to third transaction
 _ = box.space.test:delete({4})
 ---
diff --git a/test/replication/transaction.test.lua b/test/replication/transaction.test.lua
index 276452b703f327ee34c7333ab1aa3972d85ed634..1d63c7ac01c7b4267e6c2e8e72a75400df9201ea 100644
--- a/test/replication/transaction.test.lua
+++ b/test/replication/transaction.test.lua
@@ -26,12 +26,11 @@ box.begin() s:insert({3, 'm'}) s:insert({4, 'm'}) box.commit()
 box.begin() s:insert({5, 'm'}) s:insert({6, 'm'}) s:insert({7, 'm'}) box.commit()
 
 test_run:cmd("switch replica")
+-- check replication status
+test_run:wait_upstream(1,{status = 'stopped', message_re = 'Duplicate key'})
 -- nothing was applied
 v1[1] == box.info.vclock[1]
 box.space.test:select()
--- check replication status
-box.info.replication[1].upstream.status
-box.info.replication[1].upstream.message
 -- set conflict to third transaction
 _ = box.space.test:delete({4})
 box.space.test:replace({6, 'r'})