В моем приложении у меня есть текстовое поле, которое при нажатии на кнопку позволяет выбрать дату. Один из способов - выбрать дату с datepicker, или вы можете вручную отправить дату. Но всякий раз, когда я отправляю дату, она говорит, что не может найти элемент.datepicker + webdriver + не удалось идентифицировать элемент
это код для отправки даты в текстовое поле
driver.findElement(By.xpath(".//*[@id='txtdateFrom']")).sendKeys("03/05/2013");
Он выдает следующее сообщение об ошибке
org.openqa.selenium.NoSuchElementException: Unable to locate element: {"method":"xpath","selector":".//*[@id='txtdateFrom']"}
Command duration or timeout: 15 milliseconds
For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: '2.31.0', revision: '1bd294d', time: '2013-02-27 20:52:59'
System info: os.name: 'Windows 8', os.arch: 'x86', os.version: '6.2', java.version: '1.7.0_17'
Session ID: 3eea4ac2-2b38-4688-9733-8734077f7d3e
Driver info: org.openqa.selenium.firefox.FirefoxDriver
Я не имею привилегию, чтобы добавить скриншот. Пожалуйста, помогите !!
Пожалуйста найти HTML ниже
<input id="txtdateFrom" class="textbox hasDatepicker" type="text" style="color:Gray;" name="txtdateFrom">
Пожалуйста, найдите IFrame Html
<iframe width="100%" scrolling="auto" height="493" frameborder="1" style="vertical-align: top;" allowtransparency="true" id="ContentMain" src="../Report/AuditorAssignmentReportSearch.aspx?Width=100&Height=528"></iframe>
DOM текстового поля, которое при нажатии на заполнит Datepicker
attributes
[type="text", style="color:Gray;", 2 more...]
0
type="text"
1
style="color:Gray;"
2
class="textbox hasDatepicker"
3
id="txtdateFrom"
4
name="txtdateFrom"
и это атрибут datepicker после нажатия текстового поля
attributes
[class="ui-datepicker-header ui-widget-header ui-helper-clearfix ui-corner-all"]
0
class="ui-datepicker-header ui-widget-header ui-helper-clearfix ui-corner-all"
Обновлено DOM
attributes
[onclick="DP_jQuery_1368459704950.datepicker._selectDay('#txtdateFrom',4,2013, this);return false;", class=
" ui-datepicker-today"
]
0
onclick="DP_jQuery_1368459704950.datepicker._selectDay('#txtdateFrom',4,2013, this);return false;"
Скриншоты никоим образом не помогут, то, что вы всегда должны публиковать для проблемы Selenium/WebDrvier, является фактическим HTML. –
@Ross Patterson: Я добавил код HTML – Sriram
@Sriram: почему бы вам не использовать driver.findElement (By.id ("txtdateFrom")). SendKeys ("03/05/2013"); Это может сработать для вас, если сборщик дат не находится в iframe. – Omkar