Кнопка поиска селена - PullRequest
0 голосов
/ 20 июля 2011

Hy.У меня проблема с селеном IDE.У меня есть кнопка в таблице, на которую я должен нажать.

Command: click
Target: xpath=//table[@id='mainForm:dataTable']//tr[contains(., 'test1')]/td[9]/div/table/tbody/tr/td[contains(., 'Edit')]/a

Когда я нажимаю кнопку «Найти» селена, она показывает мне кнопку «Изменить» для человека «test1» в моей таблице.Таким образом, селен находит кнопку, это означает, что то, что я пишу в target, должно быть правильно.

Проблема в том, что если я хочу запустить тест, селен говорит:

[error] Element //table[@id='mainForm:dataTable']//tr[contains(., 'test1')]/td[9]/div/table/tbody/tr/td[contains(., 'Löschen')]/a not found

, и я не #не знаю почему.

Пожалуйста, помогите мне с этой проблемой:)

1 Ответ

0 голосов
/ 20 июля 2011

Может быть строка, где этот текст должен присутствовать, отличается от 9? возможно попробуйте /td[contains(., 'Löschen')]/a, если у вас нет другого тд, подобного этому на странице. Хорошей практикой будет каким-то образом подписывать этот элемент в вашем серверном скрипте (например, добавить rel = или title = или просто определенный идентификатор =) и найти его по этому параметру.

Попробуйте запустить тест, растущий этот xpath из ничего, тогда вы должны поймать ситуацию, когда точно запрошенный элемент не существует, например:

//table
//table[@id='mainForm:dataTable']
//table[@id='mainForm:dataTable']//tr
//table[@id='mainForm:dataTable']//tr[contains(., 'test1')]
//table[@id='mainForm:dataTable']//tr[contains(., 'test1')]/td
//table[@id='mainForm:dataTable']//tr[contains(., 'test1')]/td[9]

И так до тех пор, пока не появится ошибка

Возможно, у вас есть несколько javascript-кодов на странице, которые вносят изменения в дерево DOM

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...