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

464
Vistas
El archivo zip cypress-file-upload en la solución angular no funciona

Estoy tratando de cargar un archivo en una solución angular usando ciprés. Usando este complemento ( https://www.npmjs.com/package/cypress-file-upload )

ingrese la descripción de la imagen aquí

Aquí el código que usé

 const filepath = 'test-20210816-071154.zip' cy.get(".mat-focus-indicator.mat-tooltip-trigger.add-button.positive-button.small-icon-button.mat-icon-button").attachFile(filepath)

¡Ese caso de prueba está pasando pero la carga de archivos no funciona! Mientras que el mismo código que uso para cargar aquí ingrese la descripción de la imagen aquí

está funcionando.

 cy.get("#fileUpload").attachFile(filepath)

Entonces, mi pregunta: ¿el complemento cypress-file-upload realmente funciona para la solución angular? si es asi como puede ser?

usando este código cy.get('input[data-placeholder="type diagram name"]).attachFile(filepath, { subjectType: 'drag-n-drop' }).trigger('change', {force:true} ) se centra en el campo, no en el icono de importación ingrese la descripción de la imagen aquí

Finalmente obtengo la dirección de entrada exacta, que es input[type="file"] y está oculta asegurada por el desarrollador

cy.get('input[type="file"]').attachFile(filepath,{ mimeType: 'application/zip' }); usó eso: no se carga, sino que se muestra el mensaje "archivo JSON no válido". ¿Qué puedo hacer ahora?

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

attachFile() debe usarse en una <input> (el segundo ejemplo lo hace).

Pero en la aplicación Angular adjuntaste un <button> .

Necesito subir un div o dos en el árbol (difícil saberlo exactamente a partir de la información proporcionada)

 cy.get('button.add-button') .parent() .prev() .find('input') .attachFile(filepath)

Eso es una suposición, si no está bien, publique más html que muestre la <input> a la izquierda del botón en la pantalla.


Ejemplo usando Angular

Nota { subjectType: 'drag-n-drop' } es obligatorio aquí (puede o no para su aplicación).

 it('uploads a file in an Angular app', () => { cy.viewport(1200,1000) cy.visit('https://kzrfaisal.github.io/#/afu') // Upload button is initially disabled cy.get('button').contains('Upload') .should('not.be.enabled') // Attach the file cy.get('input[name="files[]"]').eq(0) .attachFile('Asmara, Eritrea.jpg', { subjectType: 'drag-n-drop' }) .trigger('change', {force:true}) // Upload button is active cy.get('button').contains('Upload') .should('be.enabled') .click() cy.contains('Successfully Uploaded !') .should('be.visible') })

Nota adicional de Humayun Rana

Por cierto, el siguiente código funciona-

 const filepath = 'xxx.zip' cy.get('input[type="file"]').attachFile(filepath,{ mimeType: 'application/zip' });

si usa xpath -

 cy.xpath('xpath to input').attachFile(filepath,{ mimeType: 'application/zip' });
over 4 years ago · Santiago Trujillo 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