diff --git a/test/replication/status.test b/test/replication/status.test
deleted file mode 100644
index 759078c4f06190281ffdda0b5c0f64217b48db82..0000000000000000000000000000000000000000
--- a/test/replication/status.test
+++ /dev/null
@@ -1,28 +0,0 @@
-# encoding: tarantool
-import os
-import time
-import re
-from lib.tarantool_server import TarantoolServer
-
-# replica server
-replica = TarantoolServer()
-replica.deploy("replication/cfg/replica.cfg",
-               replica.find_exe(self.args.builddir),
-               os.path.join(self.args.vardir, "replica"))
-
-replica.get_param("lsn")
-
-status = replica.admin.execute_no_reconnect("lua box.info.status", True)
-print(re.search(r'replica/.*/(connecting|connected)\n', status) != None)
-
-server.stop()
-status = replica.admin.execute_no_reconnect("lua box.info.status", True)
-print(re.search(r'replica/.*/(connecting|failed)\n', status) != None)
-
-# Cleanup.
-replica.stop()
-replica.cleanup(True)
-
-server.deploy(self.suite_ini["config"])
-
-# vim: syntax=python
diff --git a/test/replication/status.test.py b/test/replication/status.test.py
new file mode 100644
index 0000000000000000000000000000000000000000..111259af87e50d95545430efab484eebd5e7d47e
--- /dev/null
+++ b/test/replication/status.test.py
@@ -0,0 +1,39 @@
+import os
+import re
+import time
+
+from lib.tarantool_server import TarantoolServer
+
+# master server
+master = server
+# replica server
+replica = TarantoolServer()
+replica.script = "replication/replica.lua"
+replica.rpl_master = master
+replica.vardir = os.path.join(master.vardir, 'replica')
+replica.deploy()
+
+replica.get_param("lsn")
+
+cycles = 0
+status = replica.admin.execute_no_reconnect("box.info.status", True)
+while (re.search(r'replica/.*/(connecting|connected)\n', status) == None and cycles < 500):
+    time.sleep(0.01)
+    status = replica.admin.execute_no_reconnect("box.info.status", True)
+    cycles += 1
+print(re.search(r'replica/.*/(connecting|connected)\n', status) != None)
+
+master.stop()
+cycles = 0
+
+while (re.search(r'replica/.*/(connecting|failed)\n', status) == None and cycles < 500):
+    time.sleep(0.01)
+    status = replica.admin.execute_no_reconnect("box.info.status", True)
+    cycles += 1
+print(re.search(r'replica/.*/(connecting|failed)\n', status) != None)
+
+# Cleanup.
+replica.stop()
+replica.cleanup(True)
+
+master.deploy()