Este conteúdo foi inicialmente publicado na Newsletter da Talking About Testing.
Neste conteúdo, vou te explicar algumas diferenças entre os comandos cy.get() e cy.contains(), do framework de testes automatizados web Cypress.io.
cy.get()
- Seleciona um ou mais elementos do DOM através do seletor passado como argumento
- Recebe como argumento um seletor CSS
- Pode ser usado em combinação com o
:contains()do jQuery, para retornar vários elementos que contenham determinado conteúdo, visto que ocy.contains()retorna só o primeiro elemento encontrado (ex.:cy.get('p:contains(abacate)') // encontra todos os parágrafos que contenham em seu conteúdo a string abacate, enquanto que um cy.contains('p', 'abacate') só retornaria um elemento, mesmo que mais parágrafos possuísem a string abacate))
cy.contains()
- Seleciona um elemento do DOM
- O elemento pode conter mais do que o texto passado como argumento, e ainda assim, é selecionado
- Pode receber só um argumento, sendo este o valor que deve ser contido no elemento HTML (ex.:
cy.contains('Login')) - Ou, pode receber dois argumentos, para tornar a seleção mais específica, onde o primeiro argumento é um seletor CSS (ex.:
button) e o segundo argumento é o valor que deve ser contido em tal elemento (ex.:cy.contains('button', 'Delete'))
Existem outras diferenças, mas sabendo destas, você poderá tirar bastante proveito do que ambos os comandos podem oferecer.
Para saber mais sobre tais comandos, consulte a documentação oficial do Cypress.
Espero que tenha aprendido algo novo.
Escrevi um conteúdo relacionaado à este assunto chamado cy.get() vs. cy.contains(). Não deixe de conferir.
Ficou curioso(a) e quer aprender mais sobre automação de testes com Cypress? Conheça os cursos da Escola TAT.
- Cypress Playground
- Cypress, do Zero à Nuvem
- Cypress intermediário
- Cypress avançado
- Boas práticas em automação de testes com Cypress
- Testes end-to-end com Cypress
👋 Até a próxima e bons testes!
Um comentário em “Diferenças entre os comandos cy.get() e cy.contains() do Cypress”