I'd take the pragmatic approach here: If someone, in the future, overrides Manager::getMail, then it is that developer's responsibility to provide test code for the new method.
(That is, Of course that's only valid if Manager::getEmail really has the same code path as Employee::getEmail.! Even if the method is not overridden, this must not necessarily be the caseit might behave differently: If, for example
Employee::getEmailcould call some protected virtualgetInternalEmailwhich is overridden inManager.Employee::getEmailcould access some internal state (e.g. some field_email), which can differ in the two implementations: For example, the default implementation ofEmployeecould ensure that_emailis always[email protected], butManageris more flexible in assigning mail addresses.
In such cases, it is possible that a bug manifests itself only in EmployeeManager::getEmail calls some protected virtual getInternalEmail which, even though the implementaion isof the method itself overridden in Manager, thenis the same. In that case testing Manager::getEmail separately doescould make sense.)