A non invasive object oriented tool for software testing