2015-07-08 2 views
1

Я пытаюсь войти на сайт Sears.com с помощью Seleniumwebdriver.clicked на странице входа -> форма входа в систему открывается.Selenium Webdriver - Нет такого элемента

Но не удалось найти элемент текстового поля в форме входа. Форма Войти находится внутри фрейма (frame Name =easyXDM_default5914_provider) .Этот IFrame внутри DIV (ID = modaliframe)

driver.switchTo().frame(driver.findElement(By.xpath(".//iframe[@id='easyXDM_default5914_provider']"))); 
driver.switchTo().activeElement(); 
driver.findElement(By.id("email")).sendKeys("[email protected]"); 

Получение ниже исключением в моей консоли:

org.openqa.selenium.NoSuchElementException : Не удалось найти элемент: { "метод": "идентификатор", "селектор": "электронной почты"}

+1

Почему вы «switchTo(). ActiveElement()'? Идентификатор IFRAME, похоже, меняется, поэтому попробуйте './/iframe[starts-with(@name, 'easyXDM _')]' –

ответ

0

Try на код ниже.

driver.get("http://www.sears.com/"); 
driver.findElement(By.xpath("//*[@id='header-shop-your-way-partner']")).click(); 
driver.findElement(By.xpath("//*[@id='open-sign-in-form']/span[2]")).click(); 
driver.switchTo().frame("registration-form-iframe"); 
driver.findElement(By.xpath("//*[@id='email']")).sendKeys("[email protected]"); 
Thread.sleep(3000); 
Смежные вопросы