¿Cuál es la mejor forma de probar las subclases? Supongamos que hay una clase base para la que ya he escrito pruebas y hay algunas subclases que anulan parte del comportamiento de los padres en los métodos públicos y/o protegidos.Cómo probar las subclases de la unidad
¿Debería la clase de prueba para mis subclases ampliar (y anular los métodos de prueba cuando sea apropiado) la clase de prueba para mi clase base para que se apliquen todas las pruebas de la clase base? De lo contrario, esperaría tener un código de prueba repetido.
Su afirmación sobre cómo se aplica el principio de substición de Liskov es incorrecta. El método de una subclase no tiene que pasar todas las pruebas unitarias de la base; de lo contrario, serían conductualmente idénticas. ¿En qué caso, cuál es el punto de anular los métodos base? –
La publicación original del principio de Liskov es correcta. La subclase debería pasar todas las pruebas unitarias para la superclase, * y más *. Las pruebas adicionales reflejan la funcionalidad adicional de la subclase. Por supuesto, puede anular un método de tal manera que viole a Liskov, y en este caso fallarán las pruebas pertinentes de la unidad. – ComDubh