The multithreaded tests comes into play for the connection manager especially.
Using ByteMan can prove valuable in many cases, however I think if we can do simple stuff like inject a CyclicBarrier or something like that the test will become more clear.
Maybe there are various extensions - like http://groboutils.sourceforge.net/testing-junit/using_mtt.html - to JUnit we can use.
The key requirement is to have the tests be deterministic, such that they will work on any machine. I don't want to see any Thread.sleep() conditions...