营销型网站建设与推广,理财网站建设方案书,鞍山市住房和城乡建设网站,中国做网站的公司排名Selenium中到处都使用WebElement来执行各种操作。什么是WebElement#xff1f;这篇文章将详细讨论WebElement。
Selenium中的WebElement是一个表示网站HTML元素的Java接口。HTML元素包含一个开始标记和一个结束标记#xff0c;内容位于这两个标记之间。
HTML元素的重命名
…Selenium中到处都使用WebElement来执行各种操作。什么是WebElement这篇文章将详细讨论WebElement。
Selenium中的WebElement是一个表示网站HTML元素的Java接口。HTML元素包含一个开始标记和一个结束标记内容位于这两个标记之间。
HTML元素的重命名
Tag content /Tag
HTML元素可以嵌套如下所示-
Tag1Tag2 content/Tag2
/Tag1
所以让我们回到WebElement是一个接口而不是一个类这一点。
WebElement接口的声明 public interface WebElement
extends SearchContext, TakesScreenshot 因此WebElement扩展了另外两个接口SearchContext和TakesScreenshot。
SearchContext接口声明了两个方法可以根据情况帮助查找单个元素或元素列表。下面是SearchContext接口声明的方法
List WebElementfindElementsBy by;WebElement findElementBy by;
WebElement扩展了SearchContext接口最后使用了上述方法。
TakesScreenshot接口只声明了一个有助于截图的方法。
X getScreenshotAsOutputType target抛出WebDriverException;
除了上述方法WebElement接口还声明了一些方法-
void clickpublic void runvoid sendKeysCharSequence. keysToSendvoid clearString getTagNameString getAttributeString nameboolean isSelectedboolean isEnabledString getTextListWebElement findElementsBy by[ WebElement还声明了SearchContext接口指定的findElements方法]WebElement findElementBy by[ WebElement还声明了findElement方法该方法由SearchContext接口指定]boolean isDisplayedgetLocationgetSizeRectangle getRectString getCssValueString propertyName 现在的问题是如果WebElement只是一个接口那么哪个类实现了它的方法
许多类实现了WebElement接口如RemoteWebElement、HtmlUnitWebElement等这些类实现了WebElement接口声明的方法。
我们不能在Java中创建接口的对象。但是我们可以用接口的引用变量调用接口方法这就是我们在调用WebElement接口的方法时所做的。 // Here webelement is the reference variable
// of the WebElement interface
webElement.clear();
webElement.click(); 但问题仍然存在。我们不能将WebElement作为一个接口来创建对象我们需要一个实现WebElement接口声明的方法的对象。
这就是两种广泛使用的方法出现的地方。
List WebElementfindElementsBy by;WebElement findElementBy by;
findElement方法返回一个实现WebElement接口方法的对象而findElements返回这些对象的列表。
因此每当我们编写WebElement element findElementBy.id“firstName”时它实际上使用WebElement接口引用变量并调用由findElement方法返回的对象的实现。 WebElement可以是任何类型。它可以是文本、按钮、复选框或HTML元素。WebElement方法不能应用于每个元素类型就像我们不能清除按钮一样所以我们不应该对按钮元素类型使用clear方法。使用元素类型不支持的方法可能会也可能不会导致错误。
Selenium中的WebElement方法列表
方法名称这个方法做什么void clear如果元素是文本输入元素则此操作将清除该值并且对其他元素没有影响。void click它点击元素。WebElement findElementBy by它查找与定位条件匹配的第一个元素。ListWebElement findElementsBy by它查找所有与定位条件匹配的元素。String getAttributeString name它获取元素的给定属性的值String getCssValueString propertyName它获取给定CSS属性的值。getLocation它返回一个包含元素左上角位置的点。Rectangle getRect它返回所呈现元素的位置和大小。X X getScreenshotAs(OutputTypeX target) 它捕获屏幕截图并将其存储在指定位置。getSize它返回页面上元素的大小。String getTagName它返回此元素的标记名称。String getText它返回元素的可见文本包括子元素。boolean isDisplayed它告诉元素是否显示。boolean isEnabled它说明元素当前是否已启用。boolean isSelected它告诉元素是否被选中。void sendKeysCharSequence. keysToSend它模拟输入元素。void submit()如果当前元素是一个表单或表单中的一个元素那么它将被提交到远程服务器。