使用selenium找到xpath

时间:2014-03-26 07:09:45

标签: selenium xpath

我需要找到朋友的Facebook名单列表,因为我需要在登录后抓住“名称”按钮(或标签)。如何使用x路径捕获该名称。我所做的是左键单击代码并使用firebug单击“copyxpath”选项。但它的确有效。我正在使用java,网络驱动程序...在此先感谢...

我的代码是:

@Test
      public void testUntitled2() throws Exception {
        driver.get(baseUrl + "/");
        driver.findElement(By.id("email")).clear();
        driver.findElement(By.id("email")).sendKeys("smallfishhh4@gmail.com");
        driver.findElement(By.id("pass")).clear();
        driver.findElement(By.id("pass")).sendKeys("password");
        driver.findElement(By.id("u_0_n")).click();
        driver.findElement(By.xpath(/html/body/div/div/div/div/div/div/div/ul/li/a/span)).click();
        driver.findElement(By.linkText("Friends336")).click();
      }

1 个答案:

答案 0 :(得分:0)

如果您想点击标题中的Facebook用户名标签链接,请尝试:

//span[@class='headerTinymanName']

而不是:

/html/body/div/div/div/div/div/div/div/ul/li/a/span

在使用xpath时,应尽可能利用类名等。 xpath工具有时会产生愚蠢的xpath。在我的Facebook中,此标签链接包含类headerTinymanName,因此选择此名称应该适合您。

或者你也可以使用:By.className("headerTinymanName")

在没有xpath的情况下完成 BTW:也尽量避免通过linktext选择链接,特别是如果linktext会经常更改,所以尝试按类或ID选择此链接:

driver.findElement(By.linkText("Friends336")).click();