水豚&找不到黄瓜css定位器

时间:2013-07-21 17:25:38

标签: selenium cucumber capybara

我是黄瓜和水豚的新手,我对以下错误感到困惑:

   When I click the "Search" button    # features/step_definitions/web_steps.rb:9
  Unable to find button #<Capybara::Element tag="button"> (Capybara::ElementNotFound)
  ./features/step_definitions/web_steps.rb:11:in `/^I click the "([^"]*)" button$/'
  features/search.feature:9:in `When I click the "Search" button'

在我的功能中,我有:

When I click the "Search" button

我的步骤如下:

When /^I click the "([^"]*)" button$/ do |button_text|
  button_text = find('#gbqfb')
  click_button button_text
end

我尝试了'click(button_text)和click_link方法。我正在想一些可能显而易见的事情,我没有看到。我试图找到按钮元素的CSS定位器,然后单击该元素。我认为正则表达式不需要改变,因为我正在改变'button_text'局部变量。或者我呢?

1 个答案:

答案 0 :(得分:0)

您可以使用firstfind方法,然后点击此按钮

first('.page a', :text => '2').click
find('.page a', :text => '2').click

为你的黄瓜

When /^I click the "([^"]*)" button$/ do |button_text|
  first('.page a', :text => "#{button_text}").click
end

When /^I click the "([^"]*)" button$/ do |button_text|
  find('.page a', :text => "#{button_text}").click
end