我想通過硒webDriver上傳文件,但硒給出錯誤:無法找到元素。我用所有的方法來查找元素並點擊瀏覽,但沒有任何點擊發生在那。請給我一些建議。作爲參考我附上了截圖。如何通過硒瀏覽和上傳文件Web驅動
問候
我想通過硒webDriver上傳文件,但硒給出錯誤:無法找到元素。我用所有的方法來查找元素並點擊瀏覽,但沒有任何點擊發生在那。請給我一些建議。作爲參考我附上了截圖。如何通過硒瀏覽和上傳文件Web驅動
問候
着回答不HTML代碼。 以單擊瀏覽按鈕,發生在上一個字段即指針, 電子郵件地址字段,並使用
Robot robot=new Robot();
robot.keyPress(KeyEvent.VK_TAB);
robot.keyRelease(KeyEvent.VK_TAB);
robot.keyPress(KeyEvent.VK_ENTER);
robot.keyRelease(KeyEvent.VK_ENTER);
,然後系統彈出式窗口,然後使用AutoIt的工具來處理它
-Ajay
如果您決定使用Selenium Hub遠程運行測試,這將不起作用。 – user2525437
謝謝你的工作。 –
首先檢查輸入元素是否可見
然後,你不必點擊瀏覽按鈕,它會觸發一個操作系統級別的對話框,並有效地停止你的測試死亡。
爲了應對這種遵循此代碼:
driver.findElement(By.id("myElementId")).sendKeys("<pathToFile>");
myElementId是元素(在這種情況下按鈕)的ID和的SendKeys你必須指定你想要的內容的絕對路徑上傳。 Webdriver將爲您完成剩下的工作。
請記住,只有當要素你發送一個文件應該是在形式
這可能是由另一架則上傳將正常工作。 嘗試切換到該框架並單擊該元素。 它會工作。
對於實施例 - 如果瀏覽按鈕是在其下具有標識=「frameUpload」另一幀,則webdriver的切換到該幀像這樣:
driver.switchTo().frame("frameUpload");
現在點擊這樣的瀏覽按鈕:
driver.findElement(By.Id("Id of the button")).click();
,一旦你與點擊一下鼠標,就可以隨時恢復爲默認的窗口這樣
driver.switchTo().DefaultContent();
感謝您的回覆。 –
截圖並沒有太多幫助。你可以給我們提供你想要操作的HTML和你試過的代碼嗎? – Seanny123
–
已嘗試的代碼:操作ac =新操作(驅動程序); WebElement fileinput = driver.findElement(By.name(「metadata_item」)); ac.click(fileinput).perform(); –