Estoy usando Selenium para automatizar la interacción de un sitio web a través de ChromeDriver y .NET C#. El sitio web contiene un cuadro de diálogo modal de arranque como se ve en la captura de pantalla. Al hacer clic en el nombre de la empresa en cada fila, se descargará el documento PDF del perfil de la empresa (se abrirá una ventana del navegador infantil para la descarga).
La interacción humana con el sitio web funciona perfectamente. Además, si ejecuto $("div.modal-dialog table>tbody>tr>td")[2].firstElementChild.click();
en la consola de herramientas de desarrollo de Chrome, también descarga el PDF correctamente.
Pero ejecutar esta línea de código en Selenium como este (IJavaScriptExecutor)driver).ExecuteScript(@"$(""div.modal-dialog table>tbody>tr>td"")[2].firstElementChild.click();");
hará que el cuadro de diálogo modal desaparezca inmediatamente y no se descargue ningún PDF.
Selenium puede encontrar el elemento en $("div.modal-dialog table>tbody>tr>td")[2].firstElementChild
, que probé en el código, así que estoy bastante seguro.
Creo que el proceso de automatización está haciendo clic en la ventana principal, no en el cuadro de diálogo modal, lo que hace que este último desaparezca de inmediato. Pero, ¿cómo cambiar a una ventana emergente modal de arranque en Selenium?
¿O es algún otro problema? ¿Alguna idea? Este problema me está volviendo loco. Muchas gracias por adelantado.