2

イライラする問題があります。複雑なAngularアプリのエンドツーエンドのテストを書きたいのです。問題は、ログイン画面が別アプリになっていることです。最初のアイデアは、ログイン資格情報に基づいてエコシステム内の他のAngularアプリを分離するために分岐するというものでした. それは魅力のように機能します。ただし、テストの場合は悪夢です。

テストは期待どおりに機能しますが、正しい資格情報が入力され、メインの角度アプリが読み込まれるとすぐに、テストはタイムアウトになります。エラーメッセージやデバッグ出力はまったくなく、ただ待っているだけです。ページが正しく読み込まれていることがわかります。

ここで、この部分をスキップしてターゲット アプリで正しくテストしようと考えましたが、最初に適切な資格情報でサーバーを初期化する必要があるため (= ログイン画面を通過する)、どちらも機能しません。

これをカルマ シナリオ ランナーと分度器で試してみましたが、どちらもまったく同じ動作を示します。ターゲット ページが読み込まれた後に再初期化するように指示できますか?

4

1 に答える 1

1

そのため、分度器がタイムアウトすると、エラー メッセージにfaqへのリンクが表示されます。一番上に、この問題の説明があります。どうやらアプリは継続的なリクエストを送信するようです (おそらく私が socket.io を使用しているため) ため、Angular は決して終了しません。

この問題は、別のアプリとは関係ありません。

問題のリンクは非常に役に立ちました。私は落ち着いたページコードのいずれにも触れたくないので

browser.ignoreSynchronization = true;

browser.sleep( ... );

テストが期待どおりに機能するようになりました。

于 2014-03-21T03:30:42.227 に答える