наведите мышку на капибару - PullRequest
9 голосов
/ 14 августа 2011

У меня есть кнопка на странице, которая появляется только при наведении курсора на определенный элемент. Но я не могу понять, как имитировать это, а затем нажать на ссылку, чтобы проверить огурец с помощью капибары и селена.

Ответы [ 2 ]

5 голосов
/ 15 августа 2011

Вы можете использовать для этого пользовательский шаг, например:

When /^I click "([^"]*)" inside element "([^"]*)"$/ do |button, element_name| 

Внутри вы пишете что-то вроде:

begin
  evaluate_script("$('#{element_name}').trigger('mouseover')")
  rescue Capybara::NotSupportedByDriverError
end

И затем нажимаете нужную кнопку:)

0 голосов
/ 24 декабря 2012

Я нашел способ имитировать "зависание мыши" с помощью Capybara + драйвер Selenium. Попробуйте этот код:

module Capybara
  module Node
    class Element
      def hover
        @session.driver.browser.action.move_to(self.native).perform
      end
    end
  end
end
...