Sobes.tech
Junior — Middle

¿Has realizado pruebas automatizadas de componentes que interactúan con bases de datos?

sobes.tech AI

Respuesta de la IA

Sí, las pruebas automatizadas de componentes que interactúan con bases de datos generalmente incluyen:

  • Pruebas unitarias utilizando mocks o stubs para simular el funcionamiento de la base de datos.
  • Pruebas de integración con una base de datos real o en memoria (por ejemplo, H2 para Java) para verificar la corrección de consultas y transacciones.

Ejemplo de uso de H2 para probar DAO en Java:

@RunWith(SpringRunner.class)
@SpringBootTest
@AutoConfigureTestDatabase(replace = AutoConfigureTestDatabase.Replace.ANY)
public class UserRepositoryTest {

    @Autowired
    private UserRepository userRepository;

    @Test
    public void testFindByUsername() {
        User user = new User("testuser", "password");
        userRepository.save(user);

        User found = userRepository.findByUsername("testuser");
        assertNotNull(found);
        assertEquals("testuser", found.getUsername());
    }
}

Este enfoque permite asegurarse de que los componentes funcionan correctamente con la base de datos.