使用下面的代码我得到href
来自链接元素。
Sting url
List<WebElement> wElements = DriverFactory.getWebDriver().findElements(By.className("link-class"))
if(wElements.size() > 0) {
url = wElements[0].getAttribute("href")
}
问题是它找到了元素但没有找到href
属性!!!
如果我使用“Firefox Inspector”,该元素将显示为<span>
有正确的类名但没有href
属性。
<div><span class="link-class">The Title</span></div>
如果我使用“查看页面源代码”,相同的元素将显示为<a>
标签,它有href
属性,但类名不同!
<a href="/href/attribute/here" class="other-link-class"<span>The Title</span></a>
那么,有什么办法可以得到href
of an <a>
元素但如“查看页面源代码”中所示?当然是使用Java。
WebElements 中可能存在一些细微差别,如下所示查看源代码并如图所示督察 tool.
这两种方法是两种不同的浏览器功能,允许用户查看HTML DOM https://www.w3schools.com/js/js_htmldom.asp网页的。主要区别在于,查看源代码显示从 AUT 传送的 HTML (测试中的应用程序)到浏览器。然而,检查元素 is a 开发者工具 e.g. Chrome 开发工具 https://developers.google.com/web/tools/chrome-devtools看看的状态DOM Tree https://javascript.info/dom-nodes在浏览器应用其纠错之后以及在任何 Javascript 操作 DOM 之后。简而言之,使用查看源代码你会观察到JavaScript但不是HTML。 HTML 错误可能会在检查元素 tool.
由于使用火狐检查器你没有找到href
属性,类似地,当您执行测试时<span>
元素不包含href
的属性和值href
无法收集属性。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)