diff --git a/test/replication/qsync_basic.result b/test/replication/qsync_basic.result
index 1ebc5e5ed1dd05a0c5d7152488b0945388eec61c..8eae516cd84450f56bf9488a82325734140cf439 100644
--- a/test/replication/qsync_basic.result
+++ b/test/replication/qsync_basic.result
@@ -636,6 +636,9 @@ test_run:cmd('switch replica')
  | ---
  | - true
  | ...
+test_run:wait_lsn('replica', 'default')
+ | ---
+ | ...
 box.space.sync:count()
  | ---
  | - 100
@@ -659,6 +662,9 @@ test_run:cmd('switch replica')
  | ---
  | - true
  | ...
+test_run:wait_lsn('replica', 'default')
+ | ---
+ | ...
 box.space.sync:count()
  | ---
  | - 0
diff --git a/test/replication/qsync_basic.test.lua b/test/replication/qsync_basic.test.lua
index 2e35ad75709049a37cba78b7229a99e3fd2208ee..a1dfc9e9cf0609b06a19391df0e6aff52864ccc8 100644
--- a/test/replication/qsync_basic.test.lua
+++ b/test/replication/qsync_basic.test.lua
@@ -247,6 +247,7 @@ test_run:switch('default')
 box.cfg{replication_synchro_timeout = 1000}
 for i = 1, 100 do box.space.sync:replace{i} end
 test_run:cmd('switch replica')
+test_run:wait_lsn('replica', 'default')
 box.space.sync:count()
 -- Rows could be corrupted during WAL writes. Restart should
 -- reveal the problem during recovery.
@@ -255,6 +256,7 @@ box.space.sync:count()
 test_run:cmd('switch default')
 for i = 1, 100 do box.space.sync:delete{i} end
 test_run:cmd('switch replica')
+test_run:wait_lsn('replica', 'default')
 box.space.sync:count()
 
 --