如何指定元素的相对/局部xpath?

时间:2018-08-03 05:02:05

标签: java selenium selenium-webdriver

我正在尝试打印页面上所有元素的xpath。我正在查找页面的所有元素并将其添加到列表中。这是我尝试过的:

 driver.get("http://www.google.com/");
 List<WebElement> ele = driver.findElements(By.xpath("//*"));
 int size = ele.size();
 System.out.println(size);

  for (WebElement el : ele)
   {
        String text = el.getText();
        System.out.println(text + " --  " + el);
   }

当前,在运行代码时,它会打印完整的元素,例如:

 About --  [[ChromeDriver: chrome on XP (88e27720e873e9eedfd7819a8601fea2)] -> xpath: //*]

我想要的是这样打印(相对xpath或部分xpath):

 About -- //*[@id='fsl']/a[3]

注意:我已经尝试在评论中回答“想要检索给定WebElement的Xpath”。它返回的绝对路径。 有什么方法可以将绝对路径转换为相对路径或直接获取相对/部分路径?

0 个答案:

没有答案