The current architecture of PHPUnit and the Amp wrapper is one where each test gets its own Loop. For unit tests that are focused on ensuring a clean, known state this is likely the correct approach. However, if you need a resource with a heavy initialization cost, such as a connection to a database, that has to be run for every single test problems can quickly crop up. It would not take much to imagine a test suite attempting so many connections to the database in such a short time frame that the database becomes non-responsive! That's precisely the scenario that led to the creation of this framework and its design has been guided by the need to have a single Loop running all tests.