首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >当元素属性不存在时,在使用java的Selenium WebDriver中按Enter键

当元素属性不存在时,在使用java的Selenium WebDriver中按Enter键
EN

Stack Overflow用户
提问于 2015-10-28 17:43:56
回答 3查看 37.1K关注 0票数 2

我正在使用selenium webdriver和Java来自动化网页

当我输入url时,我将看到要求身份验证对话框。

我可以通过配置配置文件输入用户名和密码,但无法单击确定按钮

注意:无法获取ok按钮属性,因此无法使用以下代码

代码语言:javascript
运行
复制
import org.openqa.selenium.Keys
WebElement.sendKeys(Keys.RETURN);

有没有其他方法可以通过webdriver点击ok按钮?

EN

回答 3

Stack Overflow用户

发布于 2015-10-29 03:53:01

您需要将其作为一个警告框来处理,等待弹出窗口出现,然后单击OK。

下面的代码最多等待10秒,直到弹出窗口出现,然后单击OK接受弹出窗口。尽管等待是可选的。

代码语言:javascript
运行
复制
new WebDriverWait(driver, 10).until(ExpectedConditions.alertIsPresent());
driver.switchTo().alert().accept();
票数 5
EN

Stack Overflow用户

发布于 2015-10-29 02:51:42

不能直接使用Selenium处理凭证箱,可以使用JAVA AWT自动机类按enter键。这个类在java API本身中可用。

代码语言:javascript
运行
复制
Robot r = new Robot();
r.keyPress(KeyEvent.VK_ENTER);
r.keyRelease(KeyEvent.VK_ENTER);

或者,您可以使用AutoIt或基于镜像的测试工具,如SIKULI http://www.sikuli.org

请注意,当您使用这些解决方案时,不能在运行测试用例时锁定工作站屏幕。

票数 4
EN

Stack Overflow用户

发布于 2017-08-02 22:13:58

试试下面的代码片段:

代码语言:javascript
运行
复制
driver.findElement(By.xpath("//body")).sendKeys(Keys.RETURN);

它肯定能行得通。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33387626

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档