Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

199
Vistas
¿Cuál es la diferencia entre toBeInTheDocument y getBy* en @testing-library/react?

¿Hay alguna diferencia entre

 expect(screen.queryByText('<something>')).toBeInTheDocument();

Y

 screen.getByText('<something>');

(Las getBy* y queryBy* no son relevantes)

¿En react-testing-library ?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

getByText intenta encontrar el nodo y arroja un error cuando no puede encontrarlo. Esto hará que la prueba falle inmediatamente.

queryByText , por otro lado, devolverá un null si no puede encontrar el nodo.

Supongamos que tiene texto <something> en el componente que se representó, puede afirmar si se ha representado o no.

Si está seguro de que el texto se ha representado, simplemente puede usar getByText

 expect(screen.getByText('<something>')).toBeInTheDocument();

y la prueba pasaría.

Si para el escenario el texto no se representó, la afirmación anterior generará un error y fallará el caso de prueba.

En tales casos, el texto queryByText tiene más sentido

Cuando no se ha prestado

 expect(screen.getByText('<something>')).not.toBeInTheDocument(); // throws an error expect(screen.queryByText('<something>')).not.toBeInTheDocument(); // asserts as true

Comparación de salida

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda