使用水豚计算页面中的图像

时间:2013-07-29 10:41:14

标签: ruby selenium capybara capybara-webkit

我想使用capybara计算页面中显示的图像。显示在下面的html代码。因为我使用以下代码返回总计数但计数返回0.在我的页面中我还有100个图像。

  c= page.all('.thumbnail_select').count

    puts c(returns 0)

HTML

<a class="thumbnail thumbnail_img_wrap">
    <img alt="" src="test.jpg">
    <div class="thumbnail_select">
  <div class="thumail_selet_backnd"></div>
  <div class="thumbil_selt_text">Click to Select</div>
</div>
          <p>ucks</p>
          <span class="info_icon"><span class="info_icon_img"></span></span>
        </a>


<a class="thumbnail thumbnail_img_wrap">
  <img alt="" src="test1.jpg">
   <div class="thumbnail_select">
  <div class="thumail_selet_backnd"></div>
  <div class="thumbil_selt_text">Click to Select</div>
</div>
    <p>ucks</p>
  <span class="info_icon"><span class="info_icon1_img"></span></span>
</a>

.........

.........

我如何计算总图像?

1 个答案:

答案 0 :(得分:1)

您有几个选择。

使用all("div[class='thumbnail_select']").count找到包含类thumbnail_select的所有div 但这是一种尴尬的做法,因为它寻找div而不是图像。

只要页面上没有其他图像,更好的方法是使用all("img").count查找所有图像。

如果这些都不起作用,问题可能是您在开始查找图像时未加载页面。然后只需在图像计数之前进行page.should have_content检查,以确保页面已加载。