Robotframework/Selenium でのテストの自動化に Firefox アドオンHAR エクスポート トリガーを使用しています。このテストは基本的に Web ページに移動し、エクスポートされた har ファイルを何らかの式で grep します。テストは時々失敗します。
そのような場合、テスト ケースで使用されるブラウザ ウィンドウのネットワーク タブ (約 70) よりも har ファイル内の要求がはるかに少ない (約 20) ことに気付きました。テスト ケースの停止後にこれらのリクエストを手動でエクスポートすると、すべてのリクエストが期待どおりにエクスポートされます。
だから、何かがエクスポート機能を中断していると思います(ただし、他のページは開かれておらず、ブラウザは閉じられていません)。ダムを使用することもできますがSleep
、テスト クライアントがエクスポートがまだ進行中であるかどうかを確認するためのよりスマートな方法はありますか? いくつかの JS 呼び出しかコールバックか?
特定の数のエクスポート ファイルが存在するまで待機しようとしましたが、確実に機能しません。
のようなパラメーターを見てきましたdevtools.netmonitor.har.jsonpCallback
が、その使用方法はわかりません。私の設定は
("devtools.netmonitor.enabled", true);
("devtools.netmonitor.har.compress", false);
("devtools.netmonitor.har.defaultFileName", "Autoexport_%y%m%d_%H%M%S");
("devtools.netmonitor.har.defaultLogDir", <somepath>);
("devtools.netmonitor.har.enableAutoExportToFile", true);
("devtools.netmonitor.har.forceExport", true);
("devtools.netmonitor.har.includeResponseBodies", false);
("devtools.netmonitor.har.jsonp", false);
("devtools.netmonitor.har.jsonpCallback", false);
("devtools.netmonitor.har.pageLoadedTimeout", "2500");
バージョン:
Firefox 43.0,
Python 2.7.8,
selenium 2.48.0,
robotframework 3.0,
robotframework-selenium2library 1.7.4,
harexporttrigger-0.5.0-beta.7