2

C#、Nunit 2.5.10、および Selenium RC 2.24.1 で構成されるテスト フレームワークを使用して、複雑な Web アプリケーションをテストしています (残念ながら、WebDriver への切り替えはオプションではありません)。

最近、アプリケーションの UI/UX をオーバーホールしたため、新しいバージョンに合わせてテストを体系的に更新しています。

特定のテストを実行しているときにブラウザがランダムにクラッシュするように見える問題に遭遇するまで、すべてが非常にスムーズでした. テストにはFirefox (Chrome ドライバー)を使用しますが、テスト クライアントには3.6 から 15.01までのさまざまなバージョンがインストールされています。この問題は、 Windows 7 および Windows Server 2008 R2 で実行されているすべてのブラウザー バージョンで一貫して再現できるようです。

ブラウザーがクラッシュすると、次のテストに備えて開いているブラウザー セッションをすべて強制終了するクリーンアップ メソッドを実行した後もダイアログが残ります。このダイアログが残っているため、RC サーバー セッションが維持され、次の一連のテストがハングします。

クラッシュの原因となっている特定のアクションまでテストをたどりましたが、それは常にクリック イベントのようですが、アプリケーション内のさまざまなボタンで発生し、常に同じイベントであるとは限りません。すべてのボタンがjavascript ポストバックをトリガーすることを除いて、これらのボタンには共通点はありません。また、ドロップダウン ボックスの選択によってトリガーされたポストバック イベントに 1 つのクラッシュを追跡することもできました。

私たちのテスト フレームワークはかなり複雑で、何千ものテストがあるため、スイートの残りの部分を実行し続けるためだけに、クラッシュしているテストにコメントすることに頼っています。

セレンテストがたどった正確なパスをたどったとしても、手動テストでクラッシュをシミュレートすることはできませんでした.

これを引き起こしている可能性のあるもの、またはトラブルシューティングの方法についての考えをいただければ幸いです。

4

1 に答える 1

0

Microsoft Security Essentials のリアルタイム保護が原因で、Selenium テストが断続的に失敗するという問題がありました。私にとっては、[設定] | [リアルタイム保護を有効にする] のチェックを外します。テストの実行中のリアルタイム保護により、問題が修正されました。テストの実行中にウイルス対策を無効にして、問題が解決するかどうかを確認してください。どうやら、Selenium によって実行されるアクションは、ウイルス アクティビティとして解釈される可能性があります。

于 2014-11-21T11:24:25.557 に答える