Sono uno sviluppatore javascript/java e ho cercato di capire come il framework di automazione del selenio webdriver carica i file dal file system. È impossibile impostare un input di file tramite javascript perché si tratta di una violazione della sicurezza. Eppure in qualche modo WebDriver è in grado di fare questo con il seguente comando:in che modo il selenio web driver carica i file sul browser?
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();
Così stanno impostando il valore con l'invio di chiavi ad esso? Non capisco Ho guardato attraverso il codice sorgente trovato qui: http://code.google.com/p/selenium/source/checkout Non riesco ancora a trovare dove lo fanno.
Edit: La mia domanda non è come fare questo con il selenio, ma come hanno reso possibile gli sviluppatori di selenio? Come hanno fatto a superare le restrizioni di sicurezza in javascript? Come stanno caricando il file?
La mia prima risposta è che l'elemento pulsante ha un 'valore' ad esso, e sendkeys aggiunge caratteri al valore? – djangofan