¿Cómo carga selenium webdriver los archivos al navegador?
Soy un desarrollador de javascript / java y he estado tratando de descubrir cómo el marco de automatización de Selenium webdriver carga archivos del sistema de archivos. Es imposible establecer una entrada de archivo a través de javascript porque es una violación de seguridad. Sin embargo, de alguna manera, webdriver puede hacer esto con el siguiente comando:
driver.setFileDetector(new LocalFileDetector());
WebElement upload = driver.findElement(By.id("myfile"));
upload.sendKeys("/Users/sso/the/local/path/to/darkbulb.jpg");
driver.findElement(By.id("submit")).click();
¿Así que están configurando el valor enviándole claves? No lo entiendo He mirado a través del código fuente encontrado aquí:http://code.google.com/p/selenium/source/checkout Todavía no puedo encontrar donde hacen esto.
Edición: Mi pregunta no es cómo hacer esto con selenio, sino cómo los desarrolladores de selenio hicieron esto posible. ¿Cómo superaron las restricciones de seguridad en javascript? ¿Cómo están subiendo el archivo?