有一个很好的插件可以与selenium项目链接一起使用。它有助于编写更好,易读和可维护的代码。使用此功能,您可以访问多级影子DOM(最多4级)。这使用简单的CSS选择器来识别元素。
WebElement findElement(String cssSelector):如果要从DOM获得单个元素,请使用此方法
List<WebElement> findElements(String cssSelector):如果要从DOM中查找所有元素,请使用此方法
WebElement findElements(WebElement parent, String cssSelector)
:如果要从父对象DOM中查找单个元素,请使用此方法
List<WebElement> findElements(WebElement parent, String cssSelector)
:如果要从父对象DOM中查找所有元素,请使用此方法
WebElement getShadowElement(WebElement parent,String selector)
:如果要从父DOM中查找单个元素,请使用此选项
List<WebElement> getAllShadowElement(WebElement parent,String selector)
:如果要查找父DOM中的所有元素,请使用此方法
boolean isVisible(WebElement element):如果要查找元素的可见性,请使用此方法
boolean isChecked(WebElement element):如果要检查是否选中了复选框,请使用此选项
boolean isDisabled(WebElement element):如果要检查元素是否已禁用,请使用此选项
String getAttribute(WebElement element,String attribute):如果要获取属性(如aria-
selected)和元素的其他自定义属性,请使用此属性。
void selectCheckbox(String label):使用它来选择带有标签的复选框元素。
void selectCheckbox(WebElement parentElement, String label)
:使用它来选择带有标签的复选框元素。
void selectRadio(String label):使用它来选择带有标签的单选元素。
void selectRadio(WebElement parentElement, String label)
:使用此选项使用标签从父DOM中选择单选元素。
void selectDropdown(String label)
:使用此选项可使用标签选择下拉列表项(如果UI上仅存在一个下拉菜单或将其加载,则使用此选项)。
void selectDropdown(WebElement parentElement, String label)
:使用此选项使用标签从父DOM中选择下拉列表项。
如何使用此插件:您将不得不依赖您的项目。
马文
<dependency> <groupId>io.github.sukgu</groupId> <artifactId>automation</artifactId> <version>0.0.4</version><dependency>
用于位于阴影根dom元素下的html标签
<properties-page id="settingsPage"> <textarea id="textarea"></properties-page>
您可以在框架中使用此代码来获取textarea元素Object。
import io.github.sukgu.*; Shadow shadow = new Shadow(driver); WebElement element = shadow.findElement("properties-page#settingsPage>textarea#textarea"); String text = element.getText();


