Причина в том, что на странице есть 2 фрейма с именем «reg_form». Нужный элемент находится во втором, а ваш код находит первый, в котором элемента нет.
Вообщем опять остановился на фрейме) - не работает когда перехожу во второй айфрейм
пробовал - driver.switchTo().defaultContent(); но всё ровно не проходит - уже закончились идеи как это обойти, вот код:
driver = new ChromeDriver();
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
driver.manage().window().maximize();
driver.get("http://crazymailing.com");
String email = driver.findElement(By.id("email_addr")).getText();
System.out.print(email);
driver.navigate().to("https://www.opteck.com");
driver.switchTo().frame(driver.findElement(By.cssSelector("#jn_form>iframe")));
driver.findElement(By.name("fullname")).sendKeys("test");
driver.findElement(By.id("olgs_email")).sendKeys(email);
driver.findElement(By.id("olgs_phone")).sendKeys("0987654321");
driver.findElement(By.id("olgs_submit")).click();
System.out.println(driver.getTitle()); // показывает что я на страничке
driver.switchTo().frame(driver.findElement(By.xpath("//*[@class='open-account-form']/iframe")));
System.out.println(driver.findElement(By.xpath("//span[@user-name]")).getText()); // показывает что я не во фрейме
driver.findElement(By.xpath("//*[@class='btn_big']")).click();
String HASH_id= driver.findElement(By.xpath("//div[@class='account-number']")).getText();
System.out.println(HASH_id);
У меня аналогичная проблема, сижу мучаюсь неделю.я пробовал установить swg recorder но ничего не помогает.Вот код страницы http://joxi.ru/12MeaBaHW0Y52J .
я пишу вот такой код