2012-02-02 13 views
3

セレン2を使用してテストを作成しました。セレンスタンドアロンサーバーを使用してテストを実行しています。セレンテストが失敗することがあります。時々合格します

問題は、1つのテストを実行すると問題が発生することです。複数のテストを実行すると、それらの一部が失敗します。失敗したテストを実行しようとすると、正常に動作します。

スレッドでテストを実行できますか? 私はNUnit GUIとTeamCityを使ってテストを実行しました...どちらも同じ結果を返します:異なるテストが失敗し、再度実行され、他のテストが失敗します。

どのような考えですか?

テストは互いに依存してはならない

EDIT。データベースはすべてのテストごとに空になり、再投入されます。 私は唯一の問題は、データベースが正しく空にされていない可能性があると思います...しかし、同じテストを複数回実行すると失敗するはずです。テストは "要素が見つかりません" で失敗

EDIT2

。 私は数ミリ秒ごとに再試行する "WaitForElement"を追加しようとしますが、おそらくこれで修正されます。

+0

テストの性質は何ですか?彼らはスレッドセーフですか?互いに依存している? – Randy

答えて

3

スローされた正確なエラーを知らずに、言いにくいです。薄片の通常の原因は、待ち時間がある傾向があり、まともな時間に設定されていないか、Webサーバーがその多くの要求を処理できません。

DBがWebサーバーと同じマシン上にあり、ビルドボックスに表示されないようにする必要がある場合、それをクリアするのは大変です。

私は、それぞれのエラーを調べて、それを弾丸にして、次のものに移動することをお勧めします。私はそこに羽ばたきなしで常にテストを実行する人々を知っているので、間違いなくソートできる環境的なものです。

+0

答えてくれてありがとう、 "要素が見つかりません"というテストが失敗しています – sirrocco

+0

ロード中のページのテストが速すぎます。 – AutomatedTester

+0

その遅延をグローバルに増やす方法はありますか?セレンで? – sirrocco

1

私はここでパーティーに少し遅れていることは知っていますが、テストを実行するために1つのウィンドウを使用していますか?私がテストしているサイトには1ページロードイベントしかないので、要素を待つか、テストを一時停止するのが非常に面倒で、毎回異なるテストが行​​われていたので、同様の問題がありました。待ち時間を追加することは、各テストで新しい「クリーン」ブラウザを開くまで、まったく動作しませんでした。テストは遅くなりますが、効果はあります。

関連する問題