Java 如何通过标记名检索多个标记中的元素以进行selenium自动化测试
我正在使用org.openqa.selenium.By创建一个自动化的selenium测试,以获取加载的网页上的某些元素,但在搜索某些元素时,我什么也没有得到。这可能是因为我搜索的元素在几个HTML标记中?我将此代码放在浏览器控制台中,只是想看看是否可以看到列出的我要查找的标记,但我只得到顶级元素标记的列表Java 如何通过标记名检索多个标记中的元素以进行selenium自动化测试,java,html,selenium,selenium-webdriver,dom,Java,Html,Selenium,Selenium Webdriver,Dom,我正在使用org.openqa.selenium.By创建一个自动化的selenium测试,以获取加载的网页上的某些元素,但在搜索某些元素时,我什么也没有得到。这可能是因为我搜索的元素在几个HTML标记中?我将此代码放在浏览器控制台中,只是想看看是否可以看到列出的我要查找的标记,但我只得到顶级元素标记的列表 var all = document.getElementsByTagName("*"); for (var i=0, max=all.length; i < max; i++) {
var all = document.getElementsByTagName("*");
for (var i=0, max=all.length; i < max; i++) {
console.log(all.item(i))
}
var all=document.getElementsByTagName(“*”);
对于(变量i=0,max=all.length;i
有人知道使用selenium获取元素的更好方法吗?因为单靠.tagname(标记名)不起作用 请查找下面的示例以从HTML获取标记
System.setProperty("webdriver.chrome.driver", "C:\\New folder\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("https://stackoverflow.com/questions/tagged/selenium");
List<WebElement> stack = driver.findElements(By.xpath("//a"));
for (WebElement element:stack) {
System.out.println("Name of the attribute is:- " + element.getAttribute("class"));
}
driver.close();
System.setProperty(“webdriver.chrome.driver”,“C:\\New folder\\chromedriver.exe”);
WebDriver驱动程序=新的ChromeDriver();
驱动程序。获取(“https://stackoverflow.com/questions/tagged/selenium");
List stack=driver.findElements(By.xpath(“//a”);
for(WebElement:stack){
System.out.println(“属性的名称是:-”+元素.getAttribute(“类”);
}
driver.close();
您可以发布您试图自动执行的页面的HTML吗?如果不引用页面上的HTML,很难判断代码的错误。有不同的定位策略,比如类名、xpath和css选择器,但是如果没有一些HTML可供参考,我们就不能提出任何建议。