Refactoring and Improve testing on method overriding.