Quiero poder hacer clic en una casilla de verificación y probar que un elemento ya no está en el DOM en Cypress. ¿Alguien puede sugerir cómo lo haces?
//This is the Test when the check box is clicked and the element is there
cy.get('[type="checkbox"]').click();
cy.get('.check-box-sub-text').contains('Some text in this div.')
Quiero hacer lo contrario de la prueba anterior. Entonces, cuando hago clic de nuevo, el div con la clase no debe estar en el DOM.
cy.get('.check-box-sub-text').contains('Some text in this div.')
en algunos casos podría no funcionar (en algunos dispositivos). Puede reemplazarlo concy.contains('.check-box-sub-text', 'Some text in this div.')
él funcionará de la misma manera.Respuestas:
Bueno, esto parece funcionar, así que me dice que tengo algo más que aprender sobre .should ()
fuente
cy.get(data-e2e="create-entity-field-relation-contact-name").should('not.exists')
pero fallaget
y luego intenta invocarshould
varias veces, cada una de las cuales falla ... ¿alguna idea de qué estoy haciendo mal? Gracias de antemanocy.get('[data-e2e="create-entity-field-relation-contact-name"]').should('not.exists')
debería funcionar.s
en debería:.should('not.exists')
->.should('not.exist')
También puede buscar un texto que se supone que no existe:
Aquí tienes el resultado en Cypress:
0 matched elements
fuente
contains
agotó el tiempo de espera y causó que la prueba fallaraCypressError: Timed out retrying: Expected to find content: 'Im not supposed to be here' but never did.
[email protected]
, estoy comprobando si el correo electrónico existe en algún lugar. El resultado es0 element
. ¿Qué versión de Cypress estás usando?npx cypress --version
-Cypress package version: 3.5.0 Cypress binary version: 3.5.0
podría conducir a resultados falsos, ya que algunos mensajes de error se ocultan. Podría ser mejor usar
en ese caso.
fuente
should('not.exist')
solucionó un errorshould('not.be.visible')
)Esto es lo que funcionó para mí:
Compruebo que algunos
<div data-cy="parent">
no tienen imágenes adentro. Con respecto a la pregunta original, puede establecer eldata-cy="something, i.e. child"
atributo en los nodos internos y usar esta afirmación:fuente
De acuerdo con https://docs.cypress.io/guides/references/assertions.html#Existence
Esto funciona para el caso de que se esté eliminando. pero en el caso de que quiera que nunca exista ... docs.cypress.io/guides/references/assertions.html#Existence Volverá a intentarlo hasta que desaparezca. Esto realmente no funciona para el problema del título, que es lo que la mayoría de la gente buscará.
Sin embargo, si quieres probar que la cosa nunca existe en nuestro caso.
fuente
También puedes usar el siguiente código
o
o
fuente