diff --git a/src/osmo_gsm_tester/resource.py b/src/osmo_gsm_tester/resource.py
index dbfc4e0..8eec71e 100644
--- a/src/osmo_gsm_tester/resource.py
+++ b/src/osmo_gsm_tester/resource.py
@@ -508,11 +508,11 @@
                     my_item.pop(USED_KEY)
 
     def put_all(self):
+        if not self.reserved:
+            return
         for key, item_list in self.reserved.items():
-            my_list = self.get(key)
-            for my_item in my_list:
-                if my_item.get(USED_KEY):
-                    my_item.pop(USED_KEY)
+            for item in item_list:
+                item.pop(USED_KEY, None)
 
     def free(self):
         if self.reserved:
diff --git a/src/osmo_gsm_tester/suite.py b/src/osmo_gsm_tester/suite.py
index c78c9fc..f4b9260 100644
--- a/src/osmo_gsm_tester/suite.py
+++ b/src/osmo_gsm_tester/suite.py
@@ -256,6 +256,9 @@
                     continue
                 self.current_test = test
                 test.run()
+                self.stop_processes()
+                self.objects_cleanup()
+                self.reserved_resources.put_all()
         except Exception:
             log.log_exn()
         except BaseException as e:
@@ -303,10 +306,8 @@
         self._processes.insert(0, process)
 
     def stop_processes(self):
-        if not self._processes:
-            return
-        for process in self._processes:
-            process.terminate()
+        while self._processes:
+            self._processes.pop().terminate()
 
     def free_resources(self):
         if self.reserved_resources is None:
