两者都用于获取标签之间的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") //
通过使用Selenium WebDriver预定义的getAttribute("value")方法检索字段值并将其分配给String对象来获取字段值。
getText() -> 提供WebElement的innerText。 获取此元素的可见(即不被CSS隐藏)innerText,包括子元素,没有任何前导或尾随空格。
返回:
此元素的innerText。
driver.findElement(By.name("Name Locator")).getText();
'你好'将出现
<img src="w3schools.jpg" alt="W3Schools.com" width="104" height="142">
src
,alt
,width
和height
。getAttribute()
方法中传递属性值。getAttribute(attributeValue)
getAttribute(src) you get w3schools.jpg
getAttribute(height) you get 142
getAttribute(width) you get 104
getText()
返回元素的可见文本。
getAttribute(String attrName)
返回传递参数的属性值。
getText()
可以获取 webElement 的值(即)手动测试员,自动化测试员。例如:<input id="profession-0" type="checkbox" value="Manual Tester" name="profession"> 手动测试员 <input id="profession-1" type="checkbox" value="Automation Tester" name="profession"> <label class="checkbox" for="profession-1"> 自动化测试员</label> - Senthilvel