Quero poder clicar em uma caixa de seleção e testar se um elemento não está mais no DOM no Cypress. Alguém pode sugerir como você faz isso?
//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.')
Eu quero fazer o oposto do teste acima. Então, quando eu clico novamente, o div com a classe não deve estar no DOM.
cy.get('.check-box-sub-text').contains('Some text in this div.')
em alguns casos, pode não funcionar (em alguns dispositivos). Você pode substituí-lo porcy.contains('.check-box-sub-text', 'Some text in this div.')
isso funcionará da mesma maneira.Respostas:
Bem, isso parece funcionar, por isso me diz que tenho mais a aprender sobre .should ()
fonte
cy.get(data-e2e="create-entity-field-relation-contact-name").should('not.exists')
mas ele falhaget
e tenta invocarshould
várias vezes, cada uma das quais falha ... alguma idéia do que estou fazendo de errado? Agradecemos antecipadamentecy.get('[data-e2e="create-entity-field-relation-contact-name"]').should('not.exists')
deve funcionar.s
em deveria:.should('not.exists')
->.should('not.exist')
você também pode procurar por um texto que não deveria existir:
Aqui você tem o resultado no Cypress:
0 matched elements
fonte
contains
tempo limite e causou falha no testeCypressError: Timed out retrying: Expected to find content: 'Im not supposed to be here' but never did.
[email protected]
, estou verificando se o email existe em algum lugar. o resultado é0 element
. Qual versão do Cypress você está usando?npx cypress --version
-Cypress package version: 3.5.0 Cypress binary version: 3.5.0
pode levar a alguns resultados falsos, pois algumas mensagens de erro ficam ocultas. Pode ser melhor usar
nesse caso.
fonte
should('not.exist')
Fixa um erradoshould('not.be.visible')
)Aqui está o que funcionou para mim:
Verifico que alguns
<div data-cy="parent">
não têm imagens dentro. Em relação à pergunta original, você pode definir odata-cy="something, i.e. child"
atributo nos nós internos e usar esta asserção:fonte
De acordo com https://docs.cypress.io/guides/references/assertions.html#Existence
Isso funciona para o caso em que está sendo removido. mas no caso de você desejar que ele nunca exista ... docs.cypress.io/guides/references/assertions.html#Existence Ele tentará novamente até que desapareça. Isso realmente não funciona para o problema do título, que é o que a maioria das pessoas estará procurando.
No entanto, se você quiser testar se a coisa nunca existe no nosso caso.
fonte
Você também pode usar o código abaixo
ou
ou
fonte