我正在Facebook上自动化一个简单的场景,我登录我的帐户。点击好友请求图标,获取控制台上列出的所有好友请求。我的代码段如下 - 我想要找到的元素的xpath为 - // * [@ class ='clearfix ruUserBox _3-z'] / div / div / div [2] / div [1] / a“。如果我键入在Firepath控制台中,它定位了所有元素。但是在代码中,当我试图将这些元素存储在List中时,看起来它不起作用。控制台留空。这里要注意的一件事是这些的className ELements是相同的但是id是不同的。仍然是firebug在DOM中正确地定位了所有元素,但是在程序执行期间同样不起作用.P1帮助。
公共类样本{
public static void main(String[] args) throws InterruptedException {
WebDriver driver = new FirefoxDriver();
WebDriverWait wait = new WebDriverWait(driver, 2);
driver.get("https://www.facebook.com/");
driver.findElement(By.id("email")).sendKeys("abc@gmail.com");//use personal or test id
driver.findElement(By.id("pass")).sendKeys("xyz");//use personal or test password
driver.findElement(By.id("loginbutton")).click();
Thread.sleep(3000L);
WebElement friend_requests_icon = wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("fbRequestsJewel")));
friend_requests_icon.click();
driver.findElement(By.linkText("See All")).click();
List<WebElement> friendList = driver.findElements(By.xpath("//*[@class='clearfix ruUserBox _3-z']/div/div/div[2]/div[1]/a"));
Thread.sleep(3000L);
for(int i=0;i<friendList.size();i++){
System.out.println(friendList.get(i).getText());
}
}