我是Selenium
的新手,需要检查元素是否可以在Selenium
Java
中单击,因为element.click()
在链接
和标签
上都传递。
我尝试使用以下代码,但不起作用:
WebDriverWait wait = new WebDriverWait(Scenario1Test.driver, 10);
if(wait.until(ExpectedConditions.elementToBeClickable(By.xpath("(//div[@id='brandSlider']/div[1]/div/div/div/img)[50]")))==null)
ElementTobeclickable
用于检查某个元素是否可见并启用,以便单击该元素。
ExpectedConditions.ElementTobeclickable
返回WebElement
如果预期条件为true,否则将抛出TimeoutException
,则不会返回NULL
。
因此,如果您使用ExpectedConditions.ElementTobeclickable
来查找一个始终为您提供可单击元素的元素,因此不需要检查null
条件,您应该按以下方式尝试:-
WebDriverWait wait = new WebDriverWait(Scenario1Test.driver, 10);
WebElement element = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("(//div[@id='brandSlider']/div[1]/div/div/div/img)[50]")));
element.click();
正如您所说的那样,element.click()
同时传递链接
和标签
这并不意味着元素不可单击,而是意味着返回的元素已单击
,但可能没有通过单击操作对元素执行事件。
注意:-我建议您首先尝试通过id
、name
、classname
和其他定位器查找元素。如果在查找时遇到一些困难,那么使用CSSSelector
,并且始终将最后优先级赋予XPath
定位器,因为它比其他定位器定位元素要慢。
希望对你有所帮助..:)
问题内容: 有什么方法可以检查元素在纯JS(无jQuery)中是否可见? 因此,例如,在此页面中:PerformanceBikes,如果将鼠标悬停在Deals上(在顶部菜单上),则会显示一个交易窗口,但开始时未显示。它在HTML中,但不可见。 那么,给定一个DOM元素,我如何检查它是否可见?我试过了: 但它似乎不起作用。我想知道应该检查哪些属性。我想到: 还有其他我可能会想念的东西吗? 问题答案:
有没有什么方法可以让我检查一个元素在纯JS(没有jQuery)中是否可见? 例如,在这个页面:Performance Bikes中,如果你将鼠标悬停在Deals(在顶部菜单上)上,就会出现一个Deals窗口,但一开始并没有显示出来。它在HTML中,但不可见。 那么,给定一个DOM元素,我如何检查它是否可见呢?我试过: 还有其他我可能失踪的吗?
问题内容: 检查div类“ media”是否在浏览器的可视视口内的函数,而不管窗口的滚动位置如何。 试图通过此功能使用此插件,但我不知道如何使它工作。 问题答案: 好吧,您如何尝试使其工作?根据该插件的文档,返回一个布尔值,指示该元素是否可见。因此,您可以像这样使用它:
问题内容: 我想检查Selenium中是否存在一个元素,如果存在,请将其分配给一个名称。 现在,我有这样的东西: 但是,当不存在值为9的元素时,它将返回错误。有没有一种方法可以检查它是否存在,或者类似的东西? 问题答案: 有几种选择。我推荐这些。 1.创建方法或Web驱动程序扩展。 2.计算元素,如果有1个或更多元素,则获取它。 那你可以检查
本文向大家介绍如何检查可见DOM中是否存在元素?,包括了如何检查可见DOM中是否存在元素?的使用技巧和注意事项,需要的朋友参考一下 我们可以使用Node.contains方法执行此检查。Node.contains()方法返回一个布尔值,该值指示节点是否为给定节点的后代,即节点本身,其直接子级(childNodes)之一,子级的直接子级之一,依此类推。 示例 例如,您要查找具有id test的元素,
问题内容: 我正在python中使用该库,并且希望保持队列条目唯一。 因此,我想在添加到队列之前检查队列中是否没有“某物”,本质上是这样的函数,它可以在队列库中工作: 还是我应该使用其他库/方法来实现这一目标? 问题答案: 标准类不能被迭代或检查。 但是,它被构建为可扩展。 首先,如果你看一下源(这是从文档的链接),有钩的方法,,并且可以覆盖改变实现。查看主类下面的子类,您可以看到它们是如何做到的