4
有沒有人想出如何觸發通過水豚一個hoverIntent事件?在水豚/ Selenium測試觸發hoverIntent
在我的Rails應用程序的主視圖,編輯按鈕出現在表格單元格中,當用戶把鼠標停留在該單元格。
我最近添加了jQuery hoverIntent插件來延遲這些按鈕的外觀,這樣當用戶在頁面上快速移動鼠標時,UI看起來不像是一個繁忙的交換機板。
加入hoverIntent爆出幾個黃瓜,水豚,Selenium測試,很遺憾。測試已經使得按鈕會出現在與這樣的步驟(簡化):
And /^I hover on the table cell with ID "(.*)"$/ do |cell_id|
selector = "td#" + cell_id
js = %Q{ (function() { jQuery("#{ selector }").mouseover(); })() }
page.evaluate_script js
end
這對於普通鼠標懸停事件效果不錯,但它不會觸發hoverIntent。
一種(駭人聽聞的)解決方案是創建命名函數來傳遞給mouseover和mouseout行爲的hoverIntent(而不是我現在正在做的匿名內聯函數)。然後Capybara步驟可以通過名稱調用mouseover函數,並獲得相同的結果。
這側步的hoverIntent功能測試,雖然如此,它不是最佳的。
在此先感謝您的任何建議。