Wie lädt Selenium Webdriver Dateien in den Browser hoch?

Ich bin ein Javascript / Java-Entwickler und habe versucht herauszufinden, wie das Selenium Webdriver Automation Framework Dateien aus dem Dateisystem hochlädt. Es ist nicht möglich, eine Dateieingabe über Javascript festzulegen, da dies eine Sicherheitsverletzung darstellt. Doch irgendwie kann Webdriver dies mit dem folgenden Befehl tun:

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();

Sie setzen also den Wert, indem sie Schlüssel an ihn senden? Ich verstehe es nicht. Ich habe den hier gefundenen Quellcode durchgesehen:http://code.google.com/p/selenium/source/checkout Ich bin immer noch nicht in der Lage zu finden, wo sie das tun.

Edit: Meine Frage ist nicht, wie man das mit Selen macht, aber wie haben die Selenentwickler das möglich gemacht? Wie kamen sie um die Sicherheitsbeschränkungen in Javascript herum? Wie laden sie die Datei hoch?

Antworten auf die Frage(6)

Ihre Antwort auf die Frage