Optimizing Java Unit Testing Efficiency for Asynchronous Code