diff --git a/tests/dhtrunnertester.cpp b/tests/dhtrunnertester.cpp
index 960f2b628a5c3eb71503decc5324622ce4feaf1f..9354ec55d6cc0f3f6d6cb9b63ff1662a0730c41f 100644
--- a/tests/dhtrunnertester.cpp
+++ b/tests/dhtrunnertester.cpp
@@ -199,6 +199,11 @@ DhtRunnerTester::testIdOps() {
     node2.run(42232, config2, std::move(context2));
     node2.bootstrap(node1.getBound());
 
+    {
+        std::unique_lock<std::mutex> lk(mutex);
+        CPPUNIT_ASSERT(cv.wait_for(lk, 20s, [&]{ return valueCount == 1; }));
+    }
+
     node1.findCertificate(node2.getId(), [&](const std::shared_ptr<dht::crypto::Certificate>& crt){
         CPPUNIT_ASSERT(crt);
         std::lock_guard<std::mutex> lk(mutex);