2
我試圖用量角器一些終端2終端的測試居住在NG-重複的元素和我遇到了以下問題:如何找到由Ajax調用
我有這個網站:
<div ng-controller="Ctrl">
....
<tr ng-repeat="row in service.data">
<td>
{{row.name}}
</td>
<td>
<input type="checkbox" ng-modal="row.checked"/>
</td>
</tr>
</div>
,並在我的角度,我有以下JS:
.controller('Ctrl', function($scope){
$http.get('/api/service/').success(function(res){
$scope.service.data = res.data;
});
});
我有麻煩發現,從ng-repeat
,因爲它們不存在時所產生的錶行頁面加載。
我的測試,使用此代碼:
var items = element.all(by.repeater('row in service.data')).then(function(row){
// But row is always []. It doesnt wait for $http to finish
});
我試圖做一個測試用例來選中複選框,並單擊其他動作按鈕,但我需要量角器等待$ HTTP調用來完成,首先角色呈現ng-repeat
。
什麼讓這些行出現在頁面中? – 2014-10-04 20:39:53
ng-repeat重複由'$ http調用獲取設置的'service.data' – AlexCheuk 2014-10-04 20:41:13
但觸發此$ http調用的是什麼?你說的是當頁面加載時數據不在那裏。那麼它何時出現?當用戶點擊一個按鈕? – 2014-10-04 20:45:13