Para el proyecto en el que estamos trabajando mi equipo y yo, a menudo encontramos que necesitamos grandes piezas de código de andamios. Crear objetos de dominio con valores correctos, configurar simulacros para repositorios, lidiar con el caché, ... son cosas que ocurren comúnmente durante las pruebas. Muchas veces estamos trabajando con los mismos objetos básicos que son centrales para nuestro dominio (persona, ...) por lo que muchas pruebas crean instancias de estos objetos para que otros objetos trabajen. Tenemos muchas soluciones diferentes que utilizan el dominio base, por lo que este tipo de código a menudo se distribuye entre esas soluciones.
He estado pensando en crear clases comunes que hagan mucho de este andamiaje. Esto nos permitiría solicitar una persona totalmente instanciada con todo configurado (acceso a través del repositorio, almacenamiento en caché ...). Esto elimina el código duplicado de nuestras pruebas unitarias individuales, pero también significaría que hay una gran cantidad de código que probablemente hace "demasiado" por prueba (ya que configuraría un objeto completo y no solo las partes requeridas).
¿Alguien ha hecho esto alguna vez? ¿Hay alguna idea, comentario, pensamiento ... que pueda ofrecer que pueda validar o invalidar este enfoque?
fuente