嗨,我想知道如何使用Selenium WebDriver点击隐藏元素和/或禁用元素.
我知道用硒1我可以这样做如下:
selenium.click(id="idOfHiddenField");
并且这将工作,但是与硒2(WebDriver),这不是.我不想使用jquery来启用或显示隐藏的字段或JavaScript.这是因为大多数测试都在使用xpath.
或者我只需要留下旧的硒,让你点击隐藏的领域?
解决方法
有一个更简单的方法来解决问题使用JavascriptExecutor.
例如:
document.getElementsByClassName('post-tag')[0].click();
上述JavaScript将点击此页面右上方的“Selenium”标签(旁边的问题),即使它被隐藏(假设).
所有你需要做的是通过JavascriptExecutor接口发出这个JS指令,如下所示:
(JavascriptExecutor(webdriver)).executeScript("document.getElementsByClassName('post-tag')[0].click();");
这将使用JS沙箱和综合点击事件来执行点击操作.虽然它破坏了WebDriver用户活动模拟的目的,但是您可以将其用于您的情况下,在您的情况下很好的效果.