Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

260
Visualizações
¿Cómo escribir pruebas 2e2 con Cypress para una aplicación Vue Tailwind CSS?

Cuando miro los documentos de Cypress.io, hay ejemplos de cómo escribir pruebas y usan mucho los selectores de clase. Mi problema es que mi aplicación TailwindCSS en realidad no tiene ese tipo de clases, sino muchas clases pequeñas que serían muy frágiles para las pruebas. ¿Cuál es una buena solución para escribir pruebas e2e para una aplicación Tailwind?

Ejemplo de los documentos:

 it('adds todos', () => { cy.visit('https://todo.app.com') cy.get('.new-input').type('write code{enter}').type('write tests{enter}') cy.get('li.todo').should('have.length', 2) cy.get('.action-email').type('fake@email.com').should('have.value', 'fake@email.com') })

Pero mi aplicación no se parece en nada, no tengo selectores de clase como ese:

 <div class="relative flex min-h-screen flex-col justify-center overflow-hidden bg-gray-50 py-6 sm:py-12"> <span class="absolute inset-0 bg-center"></span> <div class="relative bg-white px-6 pt-10 pb-8 shadow-xl ring-1 ring-gray-900/5 sm:mx-auto sm:max-w-lg sm:rounded-lg sm:px-10"> <div class="mx-auto max-w-md"> <img v-if="showLogo" src="logo.svg" class="h-6" /> <div class="divide-y divide-gray-300/50"> <div class="space-y-6 py-8 text-base leading-7 text-gray-600"> My todo app </div> <button @click="createTodo" class="bg-white rouned-full px-2 py-4 border border-gray-200"> Create a new todo </button> </div> </div> </div> </div>

¿No sería tonto y frágil tratar de apuntar a muchas clases como esta? ¿Hay una mejor alternativa?

 it('adds todos', () => { cy.visit('https://todo.app.com') cy.get('.bg-white.rouned-full.px-2.py-4.border.border-gray-200').first().click() cy.get('.space-y-6.py-8.text-base.leading-7.text-gray-600').should('have.value', 'fake todo') })
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Considere usar atributos data-cy, que es la recomendación de Cypress. Es pragmático porque sabe exactamente qué elementos están etiquetados, pero podría requerir mucho trabajo.

 // Example - cypress.io <div class="container"> <h1 class="Hero-TagLine mt-0" data-cy="tag-line" style="font-size:5.6rem;line-height:7rem"> <div>The web has evolved.<br>Finally, testing has too.</div> </h1> <h2 class="Hero-ByLine mb-0" data-cy="by-line">Fast, easy and reliable testing...

La recomendación de Testing Library es usar textos de roles y atributos de aria.

Considere también el uso de comandos transversales para navegar desde elementos clave.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda