2017-07-06 11 views
1

私はテストするWebアプリケーションを持っています。別のボタンをクリックしている分度器で作業しているテストがあります。 いくつかのボタンはPOSTリクエストをトリガし、webappはそのポイントからの応答を待機しています。答えには30〜40秒かかることがあります。Chrome Developerのツールを調べると、webappがGETパケットを送信して2秒ごとにステータスを取得することがわかります。ステータスはwaiting,failedまたはsuccessfulです。Chromeネットワークトラフィック(XHRパケット)を監視する

私の質問は今ある: はどのようにして、ネットワークトラフィックを監視し、私はsuccessfulfailedステータスパケットが入ってきた時点で知っていること、それらをフィルタリングすることができますか? PhantomJSが見つかったNetwork Monitoring

基本的には、分度器でボタンをクリックした後に関数を呼び出す必要があります。この関数は、入ってくるすべてのパケットを調べて、ステータスがsuccessfulであることを読み取ると停止する必要があります。 60秒以上70秒を要する場合、機能はタイムアウトするはずです。

答えて

0

POSTメソッドをトリガーするボタンをクリックすると、n秒ごとに別のエンドポイント(GET)のループを開始する必要があります(アプリケーションは2秒ごとにそれを実行します)。

ステータスがwaitingの場合は、続行してください。failed - 例外を発生させ、テストに失敗した場合は、successful - テストに合格するか、必要な操作を行います。

ループがタイムアウトしないようにします。

たとえば、次のような無限ループから自分自身を守る必要があるかどうかを検討する必要があります。作業を処理する作業者は作業を停止します。その後、GETメソッドはwaitingを返します。ループは終了せず、テストは停止しません。

+0

はい、そうです、それが最善の方法でしょう。しかし、私の質問は、どのように2秒ごとにGETを聞くのですか?理論的には簡単です:ループを聞いて、ステータスが「失敗」または「成功」になるまでステータスの状態を確認してから、ループを停止します。しかし、どのように私はすべての着信パッケージを監視/聞くことができますか?私はこのwebappを書いていない、私は内部の機能がどのように動作するのか分からない。私はちょうどトラフィックを監視したい。 – dave

+0

うーん、あなたはそれらの提案を試すことができます:https://stackoverflow.com/a/34950795/6331748とhttps://stackoverflow.com/a/5103448/6331748 – Kacper

関連する問題