使用 Java 在 Selenium WebDriver 中聚焦元素的正确方法

2024-03-18

相当于什么selenium.focus()对于网络驱动程序?

element.sendKeys("");

or

new Actions(driver).moveToElement(element).perform();

我已经尝试过它们并且它们都有效,但是哪一个总是适用于所有元素?

对于任何元素(例如按钮、链接等),哪一种是正确的方式?这对我来说很重要,因为该函数将在不同的 UI 上使用。


以下代码-

element.sendKeys("");

试图找到一个输入标签框来输入一些信息,同时

new Actions(driver).moveToElement(element).perform();

更合适,因为它适用于图像元素、链接元素、下拉框等。

因此使用移动到元素()方法更有意义的是关注网页上的任何通用 WebElement。

对于输入框,您必须click()在要关注的元素上。

new Actions(driver).moveToElement(element).click().perform();

对于链接和图像,鼠标将悬停在该特定元素上,您可以根据您想要执行的操作决定单击()。

如果输入标签上的 click() 不起作用 -

由于您希望此函数是通用的,因此您首先检查 webElement 是否是输入标签 -

if("input".equals(element.getTagName()){
   element.sendKeys("");
} 
else{
   new Actions(driver).moveToElement(element).perform();

}

您可以根据自己的喜好进行类似的更改。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Java 在 Selenium WebDriver 中聚焦元素的正确方法 的相关文章

随机推荐