Перейти к содержимому

Фотография

Селениум не видит ссылки (jquery)


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 14

#1 Panterochka

Panterochka

    Новый участник

  • Members
  • Pip
  • 22 сообщений
  • ФИО:Panterkochka
  • Город:Одесса

Отправлено 11 февраля 2011 - 10:41

Добрый день
Такая ситуация:
Надо кликнуть ссылку в ячейке таблицы. Ссылка такого плана:
<a onmousedown="alert('Text')" href="#">Текст ссылки</a>
Обычными способами типа клик линк, клик по XPath, mouseDown не получается. Селениум не может ее увидеть:
ERROR: Element link='Текст ссылки' not found
Спасибо
  • 0

#2 KaNoN

KaNoN

    АЦЦКИЙ СОТОНА

  • Members
  • PipPipPipPipPipPip
  • 1 260 сообщений
  • ФИО:Колесник Николай
  • Город:Днепропетровск > Киев > Лондон

Отправлено 11 февраля 2011 - 10:44

Добрый день
Такая ситуация:
Надо кликнуть ссылку в ячейке таблицы. Ссылка такого плана:
<a onmousedown="alert('Text')" href="#">Текст ссылки</a>
Обычными способами типа клик линк, клик по XPath, mouseDown не получается. Селениум не может ее увидеть:
ERROR: Element link='Текст ссылки' not found
Спасибо

Есть вариант, что ссылка появляется не сразу. Попробуйте подождать.
Второй вариант - ссылка находится внутри какого-то фрейма. в этом случае нужно переключение между фреймами
  • 0

#3 Panterochka

Panterochka

    Новый участник

  • Members
  • Pip
  • 22 сообщений
  • ФИО:Panterkochka
  • Город:Одесса

Отправлено 11 февраля 2011 - 10:55

Ссылка появляется сразу. Но и с задержкой проверяла - не видит все-равно.
Фреймов нет
  • 0

#4 Panterochka

Panterochka

    Новый участник

  • Members
  • Pip
  • 22 сообщений
  • ФИО:Panterkochka
  • Город:Одесса

Отправлено 11 февраля 2011 - 10:57

Может я неудачно пример сократила, вот такого плана ссылка:
<a onmousedown="$(this).bind('click', {...}, function(event){...(event)})" href="#">Teкст ссылки</a>
  • 0

#5 frei_by

frei_by

    Постоянный участник

  • Members
  • PipPipPip
  • 177 сообщений
  • ФИО:Дмитрий

Отправлено 11 февраля 2011 - 11:13

ссылку видит, но событие onmousedown != click.
  • 0

#6 Panterochka

Panterochka

    Новый участник

  • Members
  • Pip
  • 22 сообщений
  • ФИО:Panterkochka
  • Город:Одесса

Отправлено 11 февраля 2011 - 11:22

ссылку видит, но событие onmousedown != click.


Я использовала и mouseDown и click - не работает. Если имеете в виду что-то другое, то подскажите пжлс)
  • 0

#7 bearoff

bearoff

    Новый участник

  • Members
  • Pip
  • 21 сообщений
  • Город:Харьков

Отправлено 11 февраля 2011 - 11:33

ERROR: Element link='Текст ссылки' not found

А как вы задаёте локатор?
Должно быть вот так, без дополнительных кавычек:
.click("link=Текст ссылки");

  • 0

#8 Panterochka

Panterochka

    Новый участник

  • Members
  • Pip
  • 22 сообщений
  • ФИО:Panterkochka
  • Город:Одесса

Отправлено 11 февраля 2011 - 11:36

Не, с синтаксисом все ОК там :acute:
  • 0

#9 KaZiK

KaZiK

    Новый участник

  • Members
  • Pip
  • 22 сообщений
  • ФИО:Казимирчик Владимир

Отправлено 11 февраля 2011 - 11:45

Не, с синтаксисом все ОК там :acute:

А если явно вызвать событие?

selenium.fireEvent("//a[contains(.,'Текст ссылки')]", "onmousedown");
  • 0

#10 Panterochka

Panterochka

    Новый участник

  • Members
  • Pip
  • 22 сообщений
  • ФИО:Panterkochka
  • Город:Одесса

Отправлено 11 февраля 2011 - 12:08

Спасибо, теперь кликает
Только это не решило проблемы, а только немного продвинуло)
Получается у меня окошко, которое должно открыться со списком после клика по линке, привязано к курсору(где он кликнул, под ним и выскочит окошко). А так как курсора нет, то и окошко не появляется, следовательно я не могу выбрать ничего из неоткрывшегося окна(
Как заставить селениум сэмулировать курсор для клика по линке и задержать его. чтоб можно было выбрать из появившегося меню то что надо?
  • 0

#11 KaZiK

KaZiK

    Новый участник

  • Members
  • Pip
  • 22 сообщений
  • ФИО:Казимирчик Владимир

Отправлено 11 февраля 2011 - 12:12

Спасибо, теперь кликает
Только это не решило проблемы, а только немного продвинуло)
Получается у меня окошко, которое должно открыться со списком после клика по линке, привязано к курсору(где он кликнул, под ним и выскочит окошко). А так как курсора нет, то и окошко не появляется, следовательно я не могу выбрать ничего из неоткрывшегося окна(
Как заставить селениум сэмулировать курсор для клика по линке и задержать его. чтоб можно было выбрать из появившегося меню то что надо?

selenium.mouseOver(locator)

потом fireEvent
  • 0

#12 Panterochka

Panterochka

    Новый участник

  • Members
  • Pip
  • 22 сообщений
  • ФИО:Panterkochka
  • Город:Одесса

Отправлено 11 февраля 2011 - 12:21

К сожалению тоже не хочет открываться окошко...
Оно у нас четко привязано к курсору... А так видимо не подходит...
  • 0

#13 Panterochka

Panterochka

    Новый участник

  • Members
  • Pip
  • 22 сообщений
  • ФИО:Panterkochka
  • Город:Одесса

Отправлено 11 февраля 2011 - 13:31

Может есть еще идеи у кого-то? :help:
  • 0

#14 KaZiK

KaZiK

    Новый участник

  • Members
  • Pip
  • 22 сообщений
  • ФИО:Казимирчик Владимир

Отправлено 11 февраля 2011 - 14:17

Может есть еще идеи у кого-то? :help:

а если попробывать clickAt(locator,"2,2");
где 2,2 это смещение от верхнего левого ушла локатора.
  • 0

#15 Panterochka

Panterochka

    Новый участник

  • Members
  • Pip
  • 22 сообщений
  • ФИО:Panterkochka
  • Город:Одесса

Отправлено 11 февраля 2011 - 14:36

Спасибо огромное! Помогло! :good:
  • 0


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных