簡體   English   中英

當元素屬性不存在時,使用java在Selenium WebDriver中按ENTER鍵

[英]Press ENTER key in Selenium WebDriver with java when element property not present

我正在使用帶有Java的selenium webdriver來自動化網頁

當我輸入網址時,我收到了需要身份驗證的對話框

我可以通過配置配置文件輸入用戶名和密碼,但我無法單擊確定按鈕

注意:無法獲取ok按鈕屬性,因此無法使用以下代碼

import org.openqa.selenium.Keys
WebElement.sendKeys(Keys.RETURN);

有沒有其他方法通過webdriver按下確定按鈕?

您需要將其作為警告框處理,等待彈出窗口出現並單擊“確定”。

下面的代碼最多等待10秒鍾,以便彈出窗口出現,然后單擊OK接受它。 雖然等待是可選的。

new WebDriverWait(driver, 10).until(ExpectedConditions.alertIsPresent());
driver.switchTo().alert().accept();

使用Selenium無法直接處理憑證框您可以使用JAVA AWT機器人類按Enter鍵。 這個類在java API本身中可用。

Robot r = new Robot();
r.keyPress(KeyEvent.VK_ENTER);
r.keyRelease(KeyEvent.VK_ENTER);

或者,您可以使用AutoIt或基於圖像的測試工具,如SIKULI http://www.sikuli.org

請注意,在使用這些解決方案時,運行測試用例時無法鎖定工作站屏幕。

試試這段代碼:

driver.findElement(By.xpath("//body")).sendKeys(Keys.RETURN);

它肯定會奏效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM