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

Фотография

Webdriver и недостатки xpath


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

#1 Ivan_Dunskyi

Ivan_Dunskyi

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

  • Members
  • Pip
  • 15 сообщений
  • ФИО:Иван Дунский

Отправлено 15 июля 2011 - 10:43

Здравствуйте, уважаемые форумчане. Пишу автотест на Java, и
столкнулся с такой проблемой: мне нужно получить все темы писем на странице в почте, созданной на ukr.net. Использовал
(selenium.getText(".//*table[@class='grid search-enabled']/tbody[@id='msglist rows']/tr[@class='message unread'/td[@class='subject']/a/span[@class='subject-text']")

а потом использовал
selenium.getText("//*div[@id='msglist-page']/div[3]/div/div/table.1.3");

но почему-то нужный текст по xpаth-у не был найден, тем более вообще такого элементы селениум не нашел.
нашел инфу, что действительно иногда возникают сложности нахождения элементов по xpath'у, попробовал использовать webdriver:

WebDriver driver = new FirefoxDriver();[/left][left]WebElement element = driver.findElement(By.className("subject-text"));

но получил ошибку ERROR: com/google/common/base/function. Пробовал импортнуть эту библиотеку, но таких не нашел.
Может я не включил какую-то библиотеку в classpath? Или может быть кто-то решил проблему поиска ячейки(темы письма) как-то по-другому? Буду благодарен за помощь, спасибо.
  • 0

#2 LeshaL

LeshaL

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 094 сообщений
  • ФИО:Алексей Лянгузов
  • Город:Saint-Petersburg


Отправлено 15 июля 2011 - 11:06

...???...

Вы на самом деле думаете, что кто-то будет читать вашу ханойскую башню? Или издеваетесь над людьми?
  • 0
Regards,
Alexey

#3 Ivan_Dunskyi

Ivan_Dunskyi

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

  • Members
  • Pip
  • 15 сообщений
  • ФИО:Иван Дунский

Отправлено 15 июля 2011 - 11:14

Вы на самом деле думаете, что кто-то будет читать вашу ханойскую башню? Или издеваетесь над людьми?

Ну, html код больше как приложение выступает. А основное содержание невелико и выдает суть, как по мне. За комментарий спасибо, удаляю. При надобности код предоставлю.
  • 0

#4 Lzk

Lzk

    Специалист

  • Members
  • PipPipPipPipPip
  • 504 сообщений
  • ФИО:Олег
  • Город:Мск

Отправлено 15 июля 2011 - 11:31

WebDriver driver = new FirefoxDriver();
WebElement element = driver.findElement(By.className("subject-text"));

но получил ошибку ERROR: com/google/common/base/function. Пробовал импортнуть эту библиотеку, но таких не нашел.
Может я не включил какую-то библиотеку в classpath? Или может быть кто-то решил проблему поиска ячейки(темы письма) как-то по-другому? Буду благодарен за помощь, спасибо.


Была такая же проблема, вот почитай.
http://software-test...um/topic/19898/
  • 0

#5 Ivan_Dunskyi

Ivan_Dunskyi

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

  • Members
  • Pip
  • 15 сообщений
  • ФИО:Иван Дунский

Отправлено 15 июля 2011 - 12:39

Была такая же проблема, вот почитай.
http://software-test...um/topic/19898/


Спасибо, этот вопрос решился, появился другой: при выполнении команды
WebDriver driver = new FirefoxDriver();
WebElement element = driver.findElement(By.xpath(".//*[@id='dynamic-content']/div[1]/div[1]/a"));

появляется ошибка
unable to locate element: {"metod":"xpath", "selector":".//*[@id='dynamic-content']/div[1]/div[1]/a"}
проверяю этот елемент с помощью
selenium.isElementPresent("//*[@id='dynamic-content']/div[1]/div[1]/a");
возвращает true...
  • 0

#6 barancev

barancev

    Администратор

  • Admin
  • PipPipPipPipPipPip
  • 6 872 сообщений
  • ФИО:Алексей Баранцев
  • Город:Россия, Москва


Отправлено 17 июля 2011 - 14:10

1. Не надо центрировать код, используйте BB-тег [code=auto:0] (на тулбаре -- угловые скобочки)
2. Почему после инициализации драйвера нет driver.get("http://yoursite.com/yourpage") ?
3. Покажите HTML-код, иначе невозможно понять, почему элемент не находится.
  • 0
Алексей Баранцев
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium

#7 Ivan_Dunskyi

Ivan_Dunskyi

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

  • Members
  • Pip
  • 15 сообщений
  • ФИО:Иван Дунский

Отправлено 18 июля 2011 - 12:02

Коллеги, проблема решена. Все-таки с помощью selenium.GetText. Проблема заключалась в неправильном Xpath. С помощью абсолютного пути Xpath нашел элемент - все работает.
Спасибо, что остались не безучастными ;)
  • 0


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

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