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

Фотография

Подсчет элементов определенного класса div


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

#1 von

von

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

  • Members
  • Pip
  • 1 сообщений

Отправлено 13 июля 2012 - 19:28

Доброго времени суток. Я только начинающий тестировщик, до сего момента было все понятно, а тут появилась задача: подсчитать количество элементов класса b-offered, что поставило меня в тупик. Пишу тест на Jscript, от элемента page - текущая страница - ищу с помощью FindChild все элементы c именем класса "b-offered". Прочитал, что для нормальной работы array нужна функция конвертирования, вставил. В основной функции :
var PropArray = ConvertJScriptArray(new Array("className", "Enabled"));
  var ValuesArray = ConvertJScriptArray(new Array("b-offered"));

...
//что-то вроде:
var i_catch_it = page.FindChild(PropArray, ValuesArray,1);
Думаю более-менее опытные люди наверняка встречались с этим, заранее спасибо за помошь
  • 0

#2 modbear

modbear

    Специалист

  • Members
  • PipPipPipPipPip
  • 548 сообщений

Отправлено 16 июля 2012 - 06:50

Мне кажется, лучше использовать EvaluateXPath, потому что для FindChild/FindAllChildren нужно задавать фиксированную глубину поиска.
Попробуйте так:
var tmpArr = page.EvaluateXPath("//DIV[@class='b-offered']");
var arr = VBArray(tmpArray).toArray();
Log.Message(arr.length + " object(s) found.");

  • 0

#3 Kissmybass

Kissmybass

    Активный участник

  • Members
  • PipPip
  • 98 сообщений


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

Я делаю так, допустим у нас есть 20 дивов с одним класснэймом.
допустим этот класс называется - expand-button.
тогда
 var findAllProductsOnPage = page.FindAll("className", "expand-button", 20);
 findAllProductsOnPage = (new VBArray(findAllProductsOnPage)).toArray();

Тогда можно обращатка ко всем элементам в массиве как хочешь. Не забудь только length ))
  • 0


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

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