2012-04-26 6 views
2

私のチームはIEブラウザテストを行うためにセレンを使用し始めました。重要な点の1つは、セレンにはページのロードが完全に終了したときを知ることが難しい(読んでいると思われますが不可能な)時間があります。私たちは、多くのJavaScript、かなりの量のAJAX、サードパーティのコントロールをばらばらに使っています。したがって、すべてのアクティビティが完了してページがテストできる状態になった時点を知ることは難しいです。このコードの多くは従来のものなので、ページの書き換えやリファクタリングはオプションではありません。非常に大きなエンタープライズアプリケーションです。IEをテストするためにWatinとセレンをどのように比較しますか?

私の主な質問は次のとおりです。これに関して、Watinはこれより優れていますか?ページが完全に読み込まれたときを検出するための仕組みが組み込まれていますか?

残念ながら、要素が表示されるのを待つことはできませんが、それは一般的にセレンのために受け入れられている方法です。多くの場合、動的要素のスクロールリストを扱い、javacriptが終了するのを待つ必要があります。これは、テストする必要のない不確定要素があるためです。

別のブラウザに切り替えることは簡単ではないため、IEで動作するソリューションを見つける必要があります。私は、それが私たちの時間をワットを調べる価値があるのか​​、それとも別のものに対してある制限のセットを取引するのかを判断しようとしています。

答えて

3

私はかなり長い間WatiNを使用していましたが、最近WatiNより優れた説明を実際に処理していると感じているので、最近Seleniumに切り替えました(Selenium WebDriver )。しかし、私はそれが実際に意見の問題に終わると思います。 WatiNはIEでしかうまく動作しないため、これに限られており、他のブラウザには分岐できません。このため、WatiNはIE用に作られており、IEでよりうまくいくかもしれないことを示唆しています。

Windowsコールを使用してブラウザの読み込みが完了したことを確認しましたか?私はこれが可能だと信じていますか? SeleniumでのXPathの追加は、Internet Explorerでは遅くても便利です。

EDIT:または、ページのJavaScriptがいつ終了したかを確認するためにJavaScriptを呼び出すことができませんでしたか?

編集編集:this postは多くの比較と意見をカバーしています。

1

WatiNとの私の仕事は、セレンよりも簡単です。我々はあまりにも、AJAXは、Javascriptをたくさん持っている - そのために私の解決策は、特定のjavascriptはそれが仕事だ終了するのを待つために

WebBrowser.Current.Div(ids.waitForBagGridToLoadIdentifier).WaitUntil("style", "display: none;"); 

を使用しています。 Seleniumにはおそらく同様のアプローチがあります。

+0

セレンには、waitForConditionがあります。これは、JavaScript文字列とタイムアウト値をとります。 [ここ](https://community.neustar.biz/community/wpm/blog/2011/03/14/selenium-tips--wait-with-waitforcondition)を見ることができます。 – Nashibukasan

関連する問題