Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

352
Views
Cypress- SelectFile() No funciona como se esperaba en Chrome

Versión de ciprés: 9.5.0
Versión cromada: 98

He estado tratando de usar cy.selectFile() para cargar un archivo en la prueba de Cypress. El siguiente código se ve como tal:

 cy.get('#new-project-photo', { force: true }).selectFile({ contents: 'cypress/fixtures/media/003_StreetView.jpg', fileName: 'image01.jpg', mimeType: 'image/jpeg', }, { force: true });

El HTML de la entrada de archivo se ve así:

 <input multiple="multiple" id="new-project-photo" data-file-type="image" data-max-size="10485760" data-callback="true" type="file" name="file" data-url="https://api.cloudinary.com/v1_1/pxd/auto/upload" data-form-data="{&quot;allowed_formats&quot;:&quot;jpg,gif,png,jpeg&quot;,&quot;callback&quot;:&quot;https://kf.pxs-staging.com/cloudinary_cors.html&quot;,&quot;timestamp&quot;:1645550617,&quot;signature&quot;:&quot;47dd768ebfad68ebce2c8c5bc9b1da08777f69f9&quot;,&quot;api_key&quot;:&quot;421553125867598&quot;}" data-cloudinary-field="photos[image]" class="cloudinary-fileupload">

El código cuando se ejecuta la prueba a través de FF se ejecuta como se esperaba y el archivo se carga con un 200 en la solicitud posterior. Sin embargo, al ejecutar la prueba a través de Chrome. Recibo un 400 con un error de {"error":{"message":"Missing required parameter - file"}} (Procedente del servidor). La carga funciona como se esperaba cuando se realiza manualmente en Chrome.

La URL a la que envía el POST es un dominio diferente a la URL base del sitio probado. Podria ser esta la causa? También tengo curiosidad por tener esto en la configuración: "chromeWebSecurity": false, que es necesario para cargar el sitio correctamente en Chrome.

También intenté envolver la imagen en un accesorio primero, el mismo problema.

¿Alguien sabe qué podría estar haciendo mal y por qué solo parece funcionar en FF?

over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Dado que está seleccionando la entrada con force: true (lo que significa que el elemento de entrada real está oculto a la vista), una posibilidad es que tal vez la entrada a la que se hace referencia no tenga los requisitos establecidos para que selectFile éxito. Quizás en Firefox, el tipo de entrada se deduce del contexto, mientras que en Chrome debería configurarse explícitamente.

¿Ha verificado que el elemento #new-project-photo pasado a selectFile cumple este requisito específicamente (de los documentos de Cypress vinculados anteriormente)?

un único elemento de entrada con type="file", o un elemento de etiqueta adjunto a uno

Si pudiera publicar el elemento y su contexto, eso podría ayudar a recrear aún más este escenario y permitir la prueba. En este momento, a partir de la información disponible, no es posible recrear este problema de manera confiable.

over 4 years ago · Santiago Trujillo Report

0

Para cualquiera que se encuentre con este problema, asegúrese de tener la última versión. A partir de hoy (v9.5.1) parece haber solucionado el problema que estaba teniendo. Está agregando imágenes ahora sin problemas. Chrome también está en la versión 99

Gracias a todos

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!