2017-06-25 48 views
1

我想爲我的網站使用量角器測試。當我運行測試時,Firefox在屏幕上顯示ng-view="admin"(正確的視圖)中的「歡迎回家的士兵」。但測試結果失敗。如何做ui視圖或ng-if的量角器測試?

的index.html:

<div ui-view="!admin"> 
<h1> Please sign up </h1> 
</div> 

<div ui-view="admin"> 
<h1> Welcome home soldier </h1> 
</div> 

index_spec.js:

如果我這樣做,那麼該測試失敗:

expect($('[ui-view="admin"]').isDisplayed()).toBe(true); 

如果我這樣做,那麼該測試成功:

expect($('[ui-view="admin"]').isDisplayed()).toBe(false); 

我試過了做isPresent(),但它給了我相同的結果。

回答

0

如果嘗試這個,你得到了良好的效果?

browser.wait(function() { 
    return $('[ui-view="admin"]').isDisplayed(); 
}, 5000); 
expect($('[ui-view="admin"]').isDisplayed()).toBe(true); 
0

請檢查您的HTML或CSS是否隱藏了元素 - 使用display:nonedisplay:block,其中isDisplayed()方法將返回false。這是由isDisplayed()方法here的代碼定義的。

此外,您還可以檢查element.size()!=0來檢查它是否顯示(這不是一個完整的需求的解決方案雖然)