📜  在 selenium java 中选择(1)

📅  最后修改于: 2023-12-03 15:37:31.333000             🧑  作者: Mango

在 Selenium Java 中选择

Selenium 是一个流行的 Web 自动化测试工具,Java 是其中的一个支持语言。在使用 Selenium 进行测试时,选择正确的元素是至关重要的。本文将介绍在 Selenium Java 中如何选择元素。

WebDriver 接口

WebDriver 接口是 Selenium 的核心接口,它提供各种方法来查找并与 Web 页面的元素进行交互。以下是一些常用的方法:

findElement() 和 findElements()

findElement() 方法在页面中查找一个单独的元素,返回一个 WebElement 对象。如果找不到该元素,则抛出 NoSuchElementException 异常。例子:

WebElement element = driver.findElement(By.id("myId"));

findElements() 方法类似于 findElement(),但是返回一个列表,其中包含所有匹配该选择器的元素。如果没有匹配的元素,则返回空列表。例子:

List<WebElement> elements = driver.findElements(By.className("myClass"));
By 对象

在调用 findElement()findElements() 方法时,需要通过 By 对象指定要查找的元素。By 是一个类,它有多个静态方法,用于查找页面元素。以下是一些常用的方法:

  • By.id(String id): 通过 id 属性查找元素。
  • By.name(String name): 通过 name 属性查找元素。
  • By.className(String className): 通过 class 属性查找元素。
  • By.tagName(String tagName): 通过标签名查找元素。
  • By.cssSelector(String cssSelector): 通过 CSS 选择器查找元素。
  • By.linkText(String linkText): 通过链接文本查找链接元素。
  • By.partialLinkText(String partialLinkText): 通过部分链接文本查找链接元素。
  • By.xpath(String xpathExpression): 通过 XPath 表达式查找元素。

以下是一些例子:

By id = By.id("myId");
By name = By.name("myName");
By className = By.className("myClass");
By tagName = By.tagName("a");
By cssSelector = By.cssSelector(".myClass");
By linkText = By.linkText("myLinkText");
By partialLinkText = By.partialLinkText("myPartialLinkText");
By xpath = By.xpath("//a[contains(@class,'myClass')]");
WebElement 接口

WebElement 接口表示一个 HTML 元素。它提供了很多方法,用于与元素进行交互。以下是一些常用的方法:

  • click(): 单击元素
  • sendKeys(CharSequence... keysToSend): 将文本发送给元素
  • getText(): 获取元素文本
  • getAttribute(String name): 获取元素属性的值
  • isEnabled(): 判断元素是否可用
  • isSelected(): 判断复选框或单选框是否被选中
  • isDisplayed(): 判断元素是否显示在页面中
  • submit(): 提交表单

以下是一些例子:

WebElement element = driver.findElement(By.id("myId"));
element.click();
element.sendKeys("hello world");
String text = element.getText();
String attribute = element.getAttribute("value");
boolean enabled = element.isEnabled();
boolean selected = element.isSelected();
boolean displayed = element.isDisplayed();
element.submit();
总结

本文介绍了在 Selenium Java 中查找和选择 Web 元素的基础知识。通过使用 WebDriver 接口、By 对象和 WebElement 接口,开发人员可以编写强大且灵活的自动化测试程序。