这行代码
List<WebElement> els = user.mDriver.findElements(By.xpath("//*"))
填充页面上所有元素的列表吗?
//*
的语法正确吗?
答案 0 :(得分:0)
以下是示例,但建议您不要使用此设计,请尝试使用较小范围的元素,而不要使用完整页面。
List<WebElement> listElements = driver.findElements(By.cssSelector("*"));
List<WebElement> listElements = driver.findElements(By.xpath("*"))
List<WebElement> listElements = driver.findElements(By.tagName("html"))
希望这会有所帮助,
答案 1 :(得分:0)
是xpath // *将返回网页的所有元素。 //表示相对xpath,*表示匹配任何节点 但是是的,如上面建议的那样,请使用较低的范围以查看元素。 尝试打印返回的Webelements的大小/计数或打印少量元素的文本
import { BrowserRouter as Router, Route } from "react-router-dom";
ReactDOM.render(
<Router history={browserHistory}>
<Route path="/" component={App} />
<Route path="/login" component={Login} />
</Router>,
document.getElementById('root')
);
registerServiceWorker();
答案 2 :(得分:0)
如果使用的是ruby,则可以调用ruby块来循环所有共享相似xpath或id的元素。
`$driver.find_elements(xpath: 'xpathname').each do |xpath|
puts xpath.text
puts xpath.id
puts xpath.value
puts xpath.checked?
end`