我需要上傳文件。 步驟如下: 1.點擊按鈕的哪個Cal模式窗口。 (Linux窗口沒有位置欄) 2.選擇正確的文件並上傳它。如何處理從模態窗口上傳文件Selenium WebDriver Java
非常感謝任何幫助。 使用Chrome Firefox驅動程序和Java。
我需要上傳文件。 步驟如下: 1.點擊按鈕的哪個Cal模式窗口。 (Linux窗口沒有位置欄) 2.選擇正確的文件並上傳它。如何處理從模態窗口上傳文件Selenium WebDriver Java
非常感謝任何幫助。 使用Chrome Firefox驅動程序和Java。
這已被要求several times,也在一些Selenium常見問題。
// assuming driver is a well instantiated WebDriver
WebElement fileInput = driver.findElement(By.xpath("//input[@type='file']"));
fileInput.sendKeys("C:/path/to/file.jpg");
的想法是直接發送的文件路徑到你通常在按拿模態窗口中的元素 - 這是<input type='file' />
元素。
謝謝,但在我的情況下,我沒有免費的輸入字段。 – 2012-05-04 11:29:27
我想,比我不確定你想如何上傳文件。去哪兒?哪個按鈕,什麼技術,它有什麼html源代碼?它在一些公開顯示的頁面上嗎?你能發佈一個最小的測試用例嗎?請更具體地說,我們真的很樂意幫忙。 – 2012-05-04 11:41:35
再次感謝,但我通過要求開發人員創建可以添加路徑的字段來傳遞此問題。 – 2012-05-04 16:48:25
我找到解決辦法與Robot class
這裏是代碼:
try {
Robot robot = new Robot();
robot.delay(3000);
robot.keyPress(KeyEvent.VK_P);
robot.keyRelease(KeyEvent.VK_P);
robot.keyPress(KeyEvent.VK_ENTER);
robot.keyRelease(KeyEvent.VK_ENTER);
} catch (AWTException e) {
e.printStackTrace();
}
對於模態窗口,我更喜歡使用的AutoIt硒,AutoIt的是一個重量很輕的應用程序,可以創建腳本,並編譯成做一個EXE文件,並在您的硒運行EXE文件,
欲瞭解更多信息,請參閱here。
你讀過http://stackoverflow.com/questions/5610256/file-upload-using-selenium-webdriver-and-java? – 2012-04-27 20:25:21