How to Guide for Java Code Testing: Best Practices and Tools