![](/img/trans.png)
[英]File Upload using Selenium WebDriver and Java Robot Class
[英]Upload a file using selenium webdriver WITHOUT using Robot API or selenium command send keys
我有一個Web應用程序正在使用Outsystem for UI。 因此,“文件上傳”按鈕的類型為“提交”,而不是類型為“文件”,因此是硒代碼
driver.findElement(By.id("browse")).sendKeys("/path/to/the/file");
用於上傳文件的文件不適用於我。 我也嘗試了機器人API的代碼
WebElement ele = driver.findElement(By.id("Browse"));
ele.click();
StringSelection ss = new StringSelection(FilePath);
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(ss, null);
Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_V);
robot.keyRelease(KeyEvent.VK_V);
robot.keyRelease(KeyEvent.VK_CONTROL);
Thread.sleep(500);
robot.keyPress(KeyEvent.VK_ENTER);
robot.keyRelease(KeyEvent.VK_ENTER);
有時效果很好,但是大多數時候都失敗了,因為焦點已從窗口移開了。 我的腳本將運行很長時間,在這種情況下,始終將焦點始終放在窗口上是不可行的。 有人可以建議我其他方法來解決Selenium中的上傳文件過程嗎?
我在這里了解到的是您無法等到彈出窗口彈出時出現,因為我們無法明確等待窗口彈出,因此在啟動機器人之前,我通過放置Thread.sleep(2000)
解決了此問題類,以便可以在我們開始使用它之前顯示彈出窗口。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.