我有一個顯示UI Bootstrap模態框的頁面。我的量角器測試然後點擊關閉它的模式中的按鈕,測試然後點擊頁面上的另一個按鈕。使量角器等待,直到UI Boostrap模態框消失(使用cucumberjs)
問題是沒有任何事情等到模式實際消失,因此經常嘗試點擊頁面上的按鈕,但由於模態背景仍然覆蓋頁面而失敗。
目前我的代碼以關閉模式是這樣的:
不知道如何等待模式觸發回調之前消失?
我有一個顯示UI Bootstrap模態框的頁面。我的量角器測試然後點擊關閉它的模式中的按鈕,測試然後點擊頁面上的另一個按鈕。使量角器等待,直到UI Boostrap模態框消失(使用cucumberjs)
問題是沒有任何事情等到模式實際消失,因此經常嘗試點擊頁面上的按鈕,但由於模態背景仍然覆蓋頁面而失敗。
目前我的代碼以關閉模式是這樣的:
不知道如何等待模式觸發回調之前消失?
一個詭計,但它適用於我:在Bootstrap模態上,明確調用waitForAngular()
並刪除fade
類。這將等待您的量角器指令(例如:單擊按鈕以顯示模態)並消除不希望的淡入淡出效果。
browser.waitForAngular();
browser.executeScript("$('.modal').removeClass('fade');");
我,似乎使用CSS轉換進行相關的UI引導模式非常類似的問題,和量角器似乎並不能夠清楚地知道什麼時候該模式中的元素是真正可用,包括無論他們何時或何時離開了該頁面。禁用CSS轉換有助於顯着提高測試的穩定性:http://stackoverflow.com/a/32264842/446030 – JcT 2015-08-28 07:29:52