IEとFFがファイル入力を少し異なるので、Internet Explorerを使用している場合にのみ問題が発生すると思われます。FFでは、ボタンまたはフィールドをクリックして開くダイアログを呼び出すことができます。ボタンまたはフィールドにをダブルクリックします。
WebDriverはネイティブイベントを使用しているため、ネイティブマウスクリックをファイル入力コントロールに送信します。これは入力フィールドのクリックに変換されます。
イベントを起動するためにJavaScriptを使用しているため、Selenium 1で動作していました。それはwebdriverをして動作させるためには、JavaScriptを起動する必要があります:コードabouveは、あなたのようなものを使用することができますないFirefoxで、のでしかし
WebElement upload = driver.findElement(By.name("Passport"));
((JavascriptExecutor)driver).executeScript("arguments[0].click();", upload);
:
WebElement upload = driver.findElement(By.name("Passport"));
if (driver instanceof InternetExplorerDriver) {
((JavascriptExecutor)driver).executeScript("arguments[0].click();", upload);
} else {
upload.click();
}