readValue can throw exception - which happens in the wrong thread as far as testng concerns. Prefer to add raw jsonEvent to queue and parse it in testng thread.