2017-04-13 20 views
0

ng-blurイベントでテキストボックスとui-selectドロップダウンを持つフォームを作成しました。3つのUIのすべてのオプションを自動的に選択するメソッドを呼び出しています。選択します。分度器e2eテストを使用してこれを行うと、ui-selectが実行され、必要なすべてのフィールドを含むフォームを送信した後にのみ表示される要素が見つからないため、例外をスローするフォームが送信されるのを待っていません。私はこのようなブラウザを試しました。ui-select選択分度器e2eテストを待つ

browser.wait(()=>{ 
     expect(element(by.model('cntrl.selectOne'))).toEqual('OneFirst'); 
     expect(element(by.model('cntrl.selectTwo'))).toEqual('TwoFirst'); 
},2000) 

これは例外です。

答えて

0

ng-blurイベントをトリガーしていますか?テキストボックスをクリックしてから、他の場所をクリックしてみてください。それとも、あなたの場合、待って

  • 要素(<セレクタ>)。トリガ( "ぼかし")
  • 要素(<セレクタ>)。triggerHandler( "ぼかし")

を試すことができますあなたを待っているものを知って、presenceOf

var EC = protractor.ExpectedConditions; 
// Waits for the element with id 'abc' to be present on the dom. 
browser.wait(EC.presenceOf($('#abc')), 5000); 
0

を使用し、私はこの

のように、ヘルパー関数を作りました
this.waitForTimeouts = function(el, time) { 
     browser.wait(function() { 
      return element(by.css(el)).isPresent(); 
     }, time); 
}; 

e = '.md-active.md-clickable'; 
this.waitForTimeouts(e, 3000); 

これは私のために働いているようです。 (かなりあなたが書いたものとの緊密な、しかし、あなたは要素を返すされていません

また、本の単純な形式は、次のようになります。

browser.wait(function() { 
      return element(by.css('.md-active.md-clickable')).isPresent(); 
    }, 3000); 
関連する問題