- Пытаясь выполнить вход через Facebook через учетную запись наград после входа в систему, я получаю iframe, чтобы связать пользователя с учетной записью наград, использую обработчик окна, чтобы найти всплывающее окно Facebook из этого фрейма, затем он закрывается после входа в систему, и я возвращаюсь в iframeно не удается найти элемент в родительском окне (iframe), когда я переключаюсь назад, я не получаю такой элемент
- ошибка:
org.openqa.selenium.NoSuchElementException: нет такого элемента: невозможно найти элемент: {"method": "xpath", "selector": "// * [@ id = 'errorData']"}
используемый код
public void amberLoginWithFacebook(String username, String pass) throws InterruptedException {
actions.driver.switchTo().defaultContent();
actions.driver.switchTo().frame(0);
actions.clickOn(By.cssSelector(facebookBtn));
Thread.sleep(2000);
Set<String> handler = actions.driver.getWindowHandles();
Iterator<String> loop = handler.iterator();
String parentWindow = loop.next();
String childWindow = loop.next();
actions.driver.switchTo().window(childWindow);
if (actions.driver.getTitle().toLowerCase().equals(facebookWindowTitle)) {
actions.setText(By.cssSelector(facebookEmail), username);
actions.setText(By.cssSelector(facebookPass), pass);
actions.clickOn(By.cssSelector(facebookLoginBtn));
Thread.sleep(2000);
}
actions.driver.switchTo().window(parentWindow);
// i get the exception here
if (actions.waitUntil(By.xpath("NonlinkedAccountError"), "presenceOfElement") != null)
{setCountryCode(properties.getProperty("CountryCode"));
setPhone(properties.getProperty("phone"));
actions.clickOn(By.xpath(defaultBtn));
actions.clickOn(By.xpath(enterEmail));
setEmail(properties.getProperty("email"));
}
Снимок экрана для кадра