首页 > 解决方案 > 使用 selenium webdriver 单击隐藏的 div 元素

问题描述

我正在测试一个应用程序,我必须单击一个菜单按钮,该按钮显示一组菜单设置。我必须单击其中一个菜单选项才能浏览页面。示例 HTML 代码如下。

<custom-icon icon="menuDown"></custom-icon>
<div class = "settings" hidden="hidden">
<div class="settingItems"> View Settings </div>
</div>

在这里,如果我点击自定义图标(一个按钮),隐藏的选项 div 变为可见,我可以点击查看设置 div 导航到页面。但由于设置 div 被隐藏,我无法访问它。谁能帮我解决这个问题。我的主要动机是点击查看设置按钮(在隐藏的 div 中)并导航到另一个页面

我尝试点击自定义图标并点击查看设置 div。我收到一个元素不可点击的错误。我猜单击自定义图标不会使设置 div 可见。我还尝试使用此代码使隐藏的 div 可见。

WebElement settingsMenu = driver.findElement(By.xpath("//div[@class='settings']"));
((JavascriptExecutor) browserDriver).executeScript("arguments[0].style.height='auto';arguments[0].style.visibility-'visible';",settingsMenu);

即使这样也行不通

标签: javaseleniumselenium-webdriverui-automation

解决方案


尝试在 webdriver 初始化之后或单击元素之前添加隐式等待。 driver.manage().timeouts().implicitlyWait(10,TimeUnit.SECONDS) ;


推荐阅读