无法在Ruby简单脚本中找到元素失败

时间:2016-05-04 10:30:45

标签: ruby watir

当我运行脚本时:

SELECT COUNT(datum) FROM unique_ip WHERE datum LIKE '%-02-%';

我得到例外:

require 'rubygems'
require 'watir-webdriver'
@browser = Watir::Browser.new :firefox

def adopt_puppy_number(num)
  @browser.button(:value => 'View details', :index => num - 1).click
  @browser.button(:value => 'Adopt Me!').click
end

@browser.goto 'http://puppies.herokuapp.com'
adopt_puppy_number 1
@browser.button(:value => 'Adopt Another Puppy').click
adopt_puppy_number 2

为什么呢?也许我应该添加一个等待命令,但究竟在哪一个?

1 个答案:

答案 0 :(得分:1)

“查看详细信息”按钮的HTML是:

<input class="rounded_button" value="View Details" type="submit">

请注意,value属性为&#34;查看详情&#34;不是&#34;查看详细信息&#34;。 Watir的定位器区分大小写,这是找不到的元素。 adopt_puppy_number方法应为:

def adopt_puppy_number(num)
  @browser.button(:value => 'View Details', :index => num - 1).click
  @browser.button(:value => 'Adopt Me!').click
end