diff --git a/test/app/fiber.result b/test/app/fiber.result
index 203e7699ffc27b800b6dc0155696a01feef5b86b..c4f2c5cfbc364d3d1362806a17b46c22acefbfab 100644
--- a/test/app/fiber.result
+++ b/test/app/fiber.result
@@ -514,6 +514,9 @@ f = fiber.create(r)
 fiber.cancel(f)
 ---
 ...
+while f:status() ~= 'dead' do fiber.sleep(0) end
+---
+...
 f:status()
 ---
 - dead
@@ -592,6 +595,9 @@ fib_id = fiber.create(testfun):id()
 fiber.find(fib_id):cancel()
 ---
 ...
+while fiber.find(fib_id) ~= nil do fiber.sleep(0) end
+---
+...
 fiber.find(fib_id)
 ---
 - null
@@ -872,6 +878,9 @@ test_run:grep_log("default", "gh%-1238") ~= nil
 _ = fiber.create(function() fiber.self():cancel() end)
 ---
 ...
+fiber.sleep(0.001)
+---
+...
 test_run:grep_log("default", "FiberIsCancelled") == nil
 ---
 - true
diff --git a/test/app/fiber.test.lua b/test/app/fiber.test.lua
index 03bd4aeaac334b3e4c9128df27bea2238d51ed40..7444492ae3b41524f5dfccdceb10e339b0dc53c4 100644
--- a/test/app/fiber.test.lua
+++ b/test/app/fiber.test.lua
@@ -197,6 +197,7 @@ fiber.status(nil)
 function r() fiber.sleep(1000) end
 f = fiber.create(r)
 fiber.cancel(f)
+while f:status() ~= 'dead' do fiber.sleep(0) end
 f:status()
 --  Test fiber.name()
 old_name = fiber.name()
@@ -220,6 +221,7 @@ f = fiber.create(testfun)
 f:cancel()
 fib_id = fiber.create(testfun):id()
 fiber.find(fib_id):cancel()
+while fiber.find(fib_id) ~= nil do fiber.sleep(0) end
 fiber.find(fib_id)
 
 --
@@ -349,6 +351,7 @@ test_run:grep_log("default", "gh%-1238") ~= nil
 
 -- must NOT show in the log
 _ = fiber.create(function() fiber.self():cancel() end)
+fiber.sleep(0.001)
 test_run:grep_log("default", "FiberIsCancelled") == nil
 
 -- must show in the log