Ruby Watir Переберите список и найдите элемент

У меня есть неупорядоченный список. уль-лист

------------ li-ola
Ola
Description 
------------ li-james
James
Description
------------ li-jake
Joe
Description
------------

Все описания встроены в div с использованием одного и того же имени "description". Мне нужно убедиться, что все элементы в списке имеют описание. Не зная, насколько большой список.

Пока у меня есть:

bb = @browser.ul(:id => 'ul-list')
bb.lis.each do |li|
  fail unless @browser.div(:class => 'description').exists?
end

Исправлена ​​моя предыдущая ошибка, но теперь тест пройден, даже если в списке ничего нет.:/

Образец HTML

<ul id=“ul-list”>
<li id=“li-ola”>
        <div class=“return”>
          <table>
            <tbody>
            <tr class=“info_return”>
              <td class="info_return_label">Brand</td>
              <td class="info_return_value">
              Ola
              </td>
            </tr>
            <tr class="info_return_row">
              <td class="info_return_desc_label">Description</td>
              <td class="info_return_description">
              Test Data
              </td>
            </tr>
            </tbody>
          </table>
        </div>
      </li>
</ul>

1 ответ

Для вашего примера HTML, этот код печатает success, Вы уверены, что это не работает для вас?

bb = browser.ul(:id => 'ul-list')
bb.lis.each do |li|
  puts 'success' if li.td(:class => 'info_return_description').exists?
end
Другие вопросы по тегам