Essential Java Building Blocks for Test Engineers