diff --git a/test/async/context.cpp b/test/async/context.cpp
index 39ee28d..34e5bb0 100644
--- a/test/async/context.cpp
+++ b/test/async/context.cpp
@@ -15,8 +15,9 @@
 
     void runToStop()
     {
-        ctx->run(std::execution::just() |
-                 std::execution::then([this]() { ctx->request_stop(); }));
+        ctx->spawn(std::execution::just() |
+                   std::execution::then([this]() { ctx->request_stop(); }));
+        ctx->run();
     }
 
     std::optional<sdbusplus::async::context> ctx{std::in_place};
diff --git a/test/async/timer.cpp b/test/async/timer.cpp
index f377e83..dfa95a6 100644
--- a/test/async/timer.cpp
+++ b/test/async/timer.cpp
@@ -14,8 +14,9 @@
 
     auto start = std::chrono::steady_clock::now();
 
-    ctx.run(sdbusplus::async::sleep_for(ctx, timeout) |
-            std::execution::then([&ctx]() { ctx.request_stop(); }));
+    ctx.spawn(sdbusplus::async::sleep_for(ctx, timeout) |
+              std::execution::then([&ctx]() { ctx.request_stop(); }));
+    ctx.run();
 
     auto stop = std::chrono::steady_clock::now();
 
