diff --git a/extended-statistics/src/test/java/org/infinispan/stats/BaseClusterTopKeyTest.java b/extended-statistics/src/test/java/org/infinispan/stats/BaseClusterTopKeyTest.java
index <HASH>..<HASH> 100644
--- a/extended-statistics/src/test/java/org/infinispan/stats/BaseClusterTopKeyTest.java
+++ b/extended-statistics/src/test/java/org/infinispan/stats/BaseClusterTopKeyTest.java
@@ -57,6 +57,10 @@ public abstract class BaseClusterTopKeyTest extends MultipleCacheManagersTest {
 
       cache(0).put(key1, "value1");
       cache(0).put(key2, "value2");
+
+      assertNoLocks(key1);
+      assertNoLocks(key2);
+
       cache(1).put(key1, "value3");
       cache(1).put(key2, "value4");
 
@@ -283,6 +287,12 @@ public abstract class BaseClusterTopKeyTest extends MultipleCacheManagersTest {
       assertTopKeyLockFailed(cache, key, failed);
    }
 
+   private void assertNoLocks(String key) {
+      for (Cache<?, ?> cache : caches()) {
+         assertEventuallyNotLocked(cache, key);
+      }
+   }
+
    private PrepareCommandBlocker addPrepareBlockerIfAbsent(Cache<?, ?> cache) {
       List<CommandInterceptor> chain = cache.getAdvancedCache().getInterceptorChain();
ISPN-<I> DistTopKeyTest.testPut random failures

* make sure that no locks are acquired before performing the next put