2015-08-31 146 views
1

两者都用于获取标签之间的WebElement值? 请更新我的假设是否正确。如果错了请详细说明。Selenium WebDriver中的b/w getText()和getAttribute()的区别?

+0

在以下情况下'的getText()'其可能获得webElement值(例如)手动测试仪,自动测试仪(例如:)' Manual Tester ' – Senthilvel

+0

'如果你留下一个倒退,请向我解释,为什么你低估了,所以我可以改进我的答案/考虑你的观点以备将来回答。 – Senthilvel

+0

你可以谷歌二,并阅读文件,解释了什么区别。这可能就是为什么这个问题被低估了。 – JeffC

回答

14
<input attr1='a' attr2='b' attr3='c'>foo</input> 

getAttribute(attr1)你得到 'A'

getAttribute(attr2)你 'B'

getAttribute(attr3)你得到 'C'

getText()没有参数你只能获得 '富'

0

的getText():获取可见(即,不是由CSS隐藏)此 元件,包括子元素的innerText,没有任何前导或尾随 空格。

getAttribute(String attrName):获取元素给定属性的值。 将返回当前值,即使已在加载该页面后 之后修改了该值。更确切地说,此方法将返回给定属性的 值,除非该属性不存在,否则将返回 这种情况下返回具有相同名称的属性的值 (例如,对于textarea的“value”属性元件)。如果 两个值均未设置,则返回null。 “样式”属性 最好可以转换为带分号 分号的文本表示。以下内容被视为“布尔”属性,并且 将返回“true”或null:异步,自动对焦,自动播放, 已检查,压缩,完整,控件,声明,默认检查, 默认选择,延迟,禁用, 隐藏,不确定,iscontenteditable,ismap,itemscope,循环, 已停产,无效,最后, 后面的常见错误大写的属性/属性名称为 按预期评估:“class”“只读”

getText()返回元素的可见文本。

getAttribute(String attrName)返回作为参数传递的属性的值。

3

getAttribute() - >它获取包含HTML标记中任意属性的文本。假设有像

<input name="Name Locator" value="selenium">Hello</input> 

HTML标记现在的getAttribute()获取的价值属性是“硒”

返回的数据: 属性的当前值或NULL,如果未设置值。

driver.findElement(By.name("Name Locator")).getAttribute("value") // The field value is retrieved by the getAttribute("value") Selenium WebDriver predefined method and assigned to the String object. 

的getText() - >递送WebElement的的innerText。 获取该元素的可见(即不被CSS隐藏)innerText,包括子元素,没有任何前导或尾随空白。

返回: 此元素的innerText。

driver.findElement(By.name("Name Locator")).getText(); 

你好会出现

1
<img src="w3schools.jpg" alt="W3Schools.com" width="104" height="142"> 

在上面的html标签,我们有像srcaltwidthheight不同的属性。

如果你想从上面的html标签得到任何属性值必须在getAttribute()方法传递属性值

语法:通过使用

getAttribute(attributeValue) 
getAttribute(src) you get w3schools.jpg 
getAttribute(height) you get 142 
getAttribute(width) you get 104 
相关问题