0

私のangular e2eテストでは、要素がDOMに存在するかどうかを確認できるようにしたいと考えています。これはテストの期待ではなく、必要な条件です。

やってみました

 element(".logout-button:visible").count() > 0

しかしcount()、未来を返し、外部では機能しませんexpect()。解決時にコールバックを追加する方法はないようです。

やってみました

element(".logout-button:visible").query(element, callback)

しかし、これは要素が存在しない場合に例外をスローし、わざわざコールバック関数に入る必要はありません。では、このかなり単純なタスクをどのように達成すればよいでしょうか?

ありがとう!

4

1 に答える 1

1

Angular シナリオには Jquery が含まれているため、jQuery を使用して特定の条件を確認できるはずです。

if($('#some-element:visible').length){
    //do something
}

または、条件が満たされるまでテストを sleep() することもできます。例えば:

element('#some-button').click();
sleep(10);
expect(element('#new-element:visibile').count()).toBe(1);
于 2013-04-30T15:32:04.613 に答える