しばらくの間、Webアプリケーションの機能テストを行うためにSeleniumRCを調査してきました。私は今、非常に効果的なテスト戦略を見つけたので、Selenium RCから離れたくありません(ASP.NET検証コントロールを検証するための良い方法を見つけるために何週間も費やした後)。
しかし、Selenium RCの冒険がPOCから実際に使用するものに移行している今、問題が発生しています。めちゃくちゃ遅いです。ページをロードし、いくつかのフィールドに入力し、ボタンをクリックする単一のテストを実行すると、実行に数秒かかります。実行中は、個々のフィールドが1つずつ入力されているのが簡単にわかります。FirefoxでSeleniumIDEを使用するのは、それほど遅くはありません。
このページを見つけました。これは、SeleniumRCが遅いことを明確に示していますhttp://selenium-grid.seleniumhq.org/how_it_works.html
しかし、それはなぜですか?ブラウザがSeleniumサーバーをポーリングしているためですか?もしそうなら、このポーリング間隔は変更できませんか?または別の理由があります。私は、実行に人間が気付くほどの時間がかかるリモートコールに慣れていません。
いくつかのテストの実行に非常に時間がかかるのは恐ろしいことです。プレゼンテーション(MVP)、ビジネス、およびデータベースレイヤーのテストスイート全体(500以上のテスト)を、単一のWebページに対して10個のテストを実行するよりもはるかに高速に実行できます。