Tomando el ejemplo muy específico de la clase JpaDao
definido en este article:¿Qué unidad de prueba escribir para una clase usando genéricos en Java?
public abstract class JpaDao<K, E> implements Dao<K, E> {
protected Class<E> entityClass;
@PersistenceContext
protected EntityManager entityManager;
public JpaDao() {
ParameterizedType genericSuperclass = (ParameterizedType) getClass().getGenericSuperclass();
this.entityClass = (Class<E>) genericSuperclass.getActualTypeArguments()[1];
}
public void persist(E entity) { entityManager.persist(entity); }
public void remove(E entity) { entityManager.remove(entity); }
public E findById(K id) { return entityManager.find(entityClass, id); }
}
¿sería mejor para escribir pruebas unitarias para todas las entidades existentes en la aplicación (Order
, Customer
, libro, etc.), o ¿sería aceptable escribir pruebas unitarias para una sola entidad, como se insinúa en este other question? ¿Hay alguna mejor práctica con respecto a la unidad de prueba de clases de Java utilizando genéricos?