Exploiting UML Diagrams for Test Case Generation: A Review