Pregunta

Estoy intentando cargar un archivo como un archivo adjunto de correo electrónico a través de un formulario basado en la web utilizando Watir-Webdriver. El problema con el que me estoy encontrando es que el código HTML real vinculado a la pieza de FileInput está oculto en la página y, por lo tanto, no se puede interactuar con el uso:

@browser.file_field(:id => "fileInput").set "#{filepath}"

Página Código HTML:

<!--Real Input field, but hidden-->
<input id="fileInput" type="file" value="" name="attachment"></input>
<input id="fileButton" type="button" name="attachment" value="Choose Files"
onclick="document.getElementById('fileInput').click();"></input>

Ahora, todo esto se dice, puedo hacer clic en el botón 'Elija archivos' en la página que abre la ventana de carga de archivos. Entonces, si no puedo interactuar en absoluto con el elemento HTML oculto, ¿cómo puedo usar Ruby para especificar qué archivo quiero cargar usando esa ventana emergente? Win32ole?

¿Fue útil?

Solución

Vienen a la mente dos posibles soluciones

uno, use una herramienta de automatización de nivel del sistema operativo como Autoit o Rautomacióninteractuar con el control de selección de archivos de nivel del sistema

Dos, consulte a los desarrolladores de la página y ejecute JavaScript para establecer los valores apropiados como si se hubiera utilizado la herramienta de selección de archivos.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top