0
我想寫一個水豚測試,測試多選擇使用Windows上的Ctrl和MacOS上的命令鍵。有沒有辦法用Capybara和Poltergeist進行Ctrl +單擊?
我在這裏找到了一個解決方案,只有當我使用Selenium作爲我的驅動程序時纔有效。 Testing jQuery Selectable capybara or selenium (ctrl + click)
但是,該解決方案不適用於Poltergeist驅動程序。 Poltergeist目前是否支持Ctrl + Click?
謝謝Thomas!我也知道這個解決方案:https://stackoverflow.com/questions/8474103/is-there-a-way-to-send-key-presses-to-webkit-using-capybara雖然它建議使用KeyboardEvent。根據MDN的keyCode已被棄用,並沒有真正推薦。我正在嘗試選擇'li'HTML元素。問題是我們故意這樣做,以便用戶需要按住'Ctrl'或'Shift'才能執行多重選擇。 – SpartaSixZero
@SpartaSixZero'send_keys'在返回之前釋放密鑰,所以它不會因爲後面的點擊而關閉。從你的描述中,我假設你需要發出一個鼠標點擊事件,並在該事件中設置正確的鍵盤修飾符。如果你的代碼也實現了通過鍵盤進行多選的方法,那麼你可以用'send_keys'來實現 - http://www.rubydoc.info/gems/capybara/Capybara/Node/Element#send_keys-instance_method - in一個交叉驅動的方式 –
不幸的是,我們的要求規定我們需要結合keydown和鼠標左鍵單擊來進行多重選擇。所以我不認爲send_keys在這裏會有幫助,因爲send_keys只需要鍵而不是鼠標點擊。我懷疑只要按下按鍵就可以做出多重選擇,但不值得僅僅做一次水豚測試。 – SpartaSixZero