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

Фотография

getXpathCount для Css


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

#1 cr0w

cr0w

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

  • Members
  • Pip
  • 44 сообщений
  • Город:Kiev

Отправлено 02 ноября 2011 - 17:00

Кто подскажет как получить кол-во элементов используя css-локаторы(RC+PHPunit)? в Selenium IDE нашол storeCssCount, в описании указано Generated from getCssCount(css), но в RC пишет, что Method getCssCount not defined :) и заодно подскажите как для css 'css=td.last', если на странице находит не один элемент выбрать не первый?(есть что-то на подобии //td[@class='last'][2]?) заранее спасибо
  • 0
In God we trust the rest we test

#2 stmark

stmark

    Опытный участник

  • Members
  • PipPipPipPip
  • 404 сообщений
  • ФИО:Докучаев Сергей
  • Город:Ярославль


Отправлено 02 ноября 2011 - 22:30

Есть подозрения, что данный метод для PHP отсутствует, но вот для Java он имеется точно.
Поэтому варианты мне видятся такие:
1. Придумать способ при котором не потребуется использование этого метода.
2. Использовать getXPathCount
3. Воспользоваться «хаком» или его упрощенным вариантом, взятым тут:

private int getCSSCount(String aCSSLocator){ 	
	String jsScript = "var cssMatches = eval_css(\"%s\", window.document);cssMatches.length;";      
	return Integer.parseInt(selenium.getEval(String.format(jsScript, aCSSLocator)));      
}

Для того, чтобы выбрать n-ый элемент, можно воспользоваться псевдоклассом nth-child, как-то так:

css=td.last:nth-child(2)

  • 0

#3 cr0w

cr0w

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

  • Members
  • Pip
  • 44 сообщений
  • Город:Kiev

Отправлено 03 ноября 2011 - 08:48

Спасибо за помощь
  • 0
In God we trust the rest we test


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

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