Selenium WebDriver中的getText()和getAttribute()有什么区别?
2022-09-02 22:58:54
两者都用于获取标记之间的 WebElement 值。
我的假设正确吗?如果错了,请详细说明。
两者都用于获取标记之间的 WebElement 值。
我的假设正确吗?如果错了,请详细说明。
<input attr1='a' attr2='b' attr3='c'>foo</input>
getAttribute(attr1)
你得到'a'
getAttribute(attr2)
你得到'b'
getAttribute(attr3)
你得到'c'
getText()
没有参数,你只能得到“foo”
getAttribute() -> 它获取包含 HTML 标记中任何属性之一的文本。假设有一个 HTML 标记,如
<input name="Name Locator" value="selenium">Hello</input>
现在 getAttribute() 获取 'value' 属性的数据,即 “Selenium”。
返回:
属性的当前值或 null(如果未设置该值)。
driver.findElement(By.name("Name Locator")).getAttribute("value") //
字段值由 getAttribute(“value”) Selenium WebDriver 预定义方法检索,并分配给 String 对象。
getText() ->提供 WebElement 的 innerText。获取此元素的可见(即未被 CSS 隐藏)innerText,包括子元素,没有任何前导或尾随空格。
返回:
此元素的内部文本。
driver.findElement(By.name("Name Locator")).getText();
将出现“你好”