我搜索了文檔和谷歌,我正在努力尋找堅實的參考,以便如何爲ngMouseenter
事件編寫E2E測試。 Angular的E2E測試工具有element(<selector>).click()
,但沒有其他事件類型可以看到。沒有辦法測試ngMouseenter嗎?
在我的情況下,mouseenter(和mouseleave)會觸發我想繼續測試的行爲,我想其他人也有類似的用例。有沒有辦法做到這一點?
[編輯]
,我發現這裏的角度的情況下亞軍的延伸上SO:AngularJS: how to invoke event handlers and detect bindings in tests
這讓我做的事情:
jqFunction(<selector>, "mouseenter")
偉大工程。
這個解決方案似乎不幸的是沒有工作,雖然我不能精確知道爲什麼。然而,我在這裏發現了一個有用的擴展,它允許我做我正在尋找的東西:http://stackoverflow.com/questions/17575768/angularjs-how-to-invoke-event-handlers-and-detect -bindings-in-tests/17807007#17807007 – cmw
不錯的地方。看到這一點,我想我明白爲什麼我的工作不正常,而其他人則如此。 在我的'query'裏面,'selected'是來自場景運行器內部的jQuery lib(我的情況是1.8.2)中的一個jq對象。當我觸發一個事件時,它會爲該jQuery實例運行附加在緩存中的處理程序。 該鏈接顯示瞭如何從實際應用中獲取jQuery實例(從而將測試綁定到應用多一點),並允許您像從自己的應用中完成一樣觸發。 我仍然有點困惑,爲什麼'click'會工作,但'mouseenter'不會。 – Andyrooger