特定の要素にカーソルを置いたときにのみ表示されるページ上にボタンがあります。しかし、私はこれをエミュレートする方法を理解できず、リンクをクリックして、カピバラとセレンを使ってキュウリを試すことができます。カピバラ上にマウスを置いて
答えて
あなたが好き、このためのカスタム定義されたステップを使用したい場合があります:
When /^I click "([^"]*)" inside element "([^"]*)"$/ do |button, element_name|
内側には、あなたが何か書く:
begin
evaluate_script("$('#{element_name}').trigger('mouseover')")
rescue Capybara::NotSupportedByDriverError
end
をそしてあなたは:)
たいというボタンをクリックしてください私はCapybara + the Seleniumドライバを使って "マウスのホバー"をシミュレートする方法を見つけました。このコードを試してみてください。
module Capybara
module Node
class Element
def hover
@session.driver.browser.action.move_to(self.native).perform
end
end
end
end
これは動作しません –
SeleniumのChromeとFirefoxのドライバで動作します。あなたが応答する前にホバリングした後、ほんの数秒待つ必要があるかもしれません。それでも動作しない場合は、 'debugger' gemを使い、Capybaraテストの' debugger'を呼び出し、Chrome/FFブラウザウィンドウで何が起きているのかを見て、Seleniumコマンドを入力してみてください。 –
ああ、FFではネイティブイベントを有効にする必要があるかもしれません。それはセレンのドキュメントにあります... –
- 1. divの画像の上にマウスを置いて
- 2. divのネストされたアイテムの上にマウスを置いて
- 3. セレンの上にマウスを置く
- 4. マウスがli cssの上にマウスを置いたときにulクラスを表示
- 5. ナビゲーションボタンの上にマウスを置いたときにサイドバーが動く
- 6. グリッド上のマウスの位置を取得
- 7. スイング:半透明のラジオボタンの上にマウスを置いてください。JPanel
- 8. divのホバー上にマウスを置いて表示メニューを表示する場合
- 9. DIV上にマウスを置いてjQueryのdatepickerを表示する方法は?
- 10. リンク上にマウスを置いたときに手記号を無効にする
- 11. マウスの上にマウスを置いたまま、中央の画面で写真を拡大するには?
- 12. マウスがQSplitter上にマウスを置いたときに分割水平シンボルを隠す
- 13. バー上にマウスを置いたときにラベルを表示する方法
- 14. スクリプト上にマウスを置いたときに画像のポップアップを使用する
- 15. hoverIntentでホバー上のマウス位置にDIVを表示
- 16. ビジュアルスタジオ2010フォームデザイナー上にマウスの位置を表示
- 17. テキストの上にマウスを置いたときのフォント色の変更
- 18. 親の上にマウスを置いたときの子要素のスタイル
- 19. マウス位置カウント
- 20. マウスの上にマウスを置いている要素の隣にdivを表示させるにはどうすればよいですか? (jQueryの)
- 21. QStyledItemDelegateでマウスの上にマウスを置くと、マウスポインタをどのように変更できますか?
- 22. 私の上にマウスを置いてもドロップダウンメニューが表示されないのはなぜですか?
- 23. jQueryバナーキャンセルボタンの上にマウスを置くと、機能が無効になります
- 24. 別のdivの上にマウスを置いてdivをもう一度開きます。
- 25. JavaScriptでは、ラジオボタンの上にマウスを置いて、そのラジオボタンの値を出力しますか?
- 26. マウスの位置を取得
- 27. マウスの上のフラッシュイメージ
- 28. マウス上のUpdatePanel(ツールチップ)
- 29. マウスの色をマウスの上に保ちます
- 30. ドラッグアンドドロップ中にマウスの位置を取得
悲しいことに、これはCSSのために動作しません:ホバーベースのドロップダウンを...私たちは、明示的に特定のもののために周りの偽マウスを移動する方法のいくつかの並べ替えを必要とする... – fringd
これは私見を動作するはずです。 evaluate_script( "$( 'div#name> ul> li> a:contains(#{menu_name})))。trigger(' mouseover ')")。また、afaikセレンは、x、yの次元でカーソルを移動することをサポートしていますが、これは楽しいものではありません;) – socjopata
socjopata、どのcapybaraドライバーを使用していますか、あなたはCSSを使用していることを確認していますか:joverのjavascriptまたは。 ..)? – fringd