この質問をする同様の投稿がたくさんあります:
Selenium Rubyの要素にカーソルを合わせる(マウスオーバー)方法は?
Selenium2 WebDriver Ruby => 非表示のリンクをクリックする方法
Ruby Mouse Over は十分な長さではありません。何らかの遅延が必要になる場合があります
ホバーするdiv.rating-panel
まで非表示にします。div.empty-stars-container
ユーザーが上div.empty-stars-container
にカーソルを置いて、div.rating-panel
.
it "should create rating items" , :js => true do
# wait = Selenium::WebDriver::Wait.new(:timeout => 10) # seconds
empty_stars = page.driver.browser.find_element(:css, "h1 .empty-stars-container")
star_3 = page.driver.browser.find_element(:css, "h1 a#panel_1_star_3")
new_save = page.driver.browser.find_element(:css, "input#new_save")
page.driver.browser.action.move_to(empty_stars).perform
# wait.until { star_3.displayed? == true }
star_3.click
new_save.click
page.should have_css("div.user-stars-container")
end
ブラウザが開き、move_to
アクションが実行されますが (私はそう思います)、パネルが表示されることはありません! しようとしましwait.until
たが、タイムアウトが発生しました。
テストstar_3.click
はエラー メッセージで失敗します
Element is not currently visible and so may not be interacted with
私のアプリケーションには多くの JavaScript テストがあり、Selenium が必要なヘルプを提供してくれることを願っていたので、私がやろうとしていることを実行する方法があることを願っています。
何か案は?