繁体   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