8

私の現在のプロジェクトでは、単体テストとSeleniumで記述されたUATの駆動にNUnitを使用しています。開発者は通常、VS.Net 2003でReSharperのテストランナーを使用してテストを実行し、ビルドボックスはNAntを介してテストを開始します。

UATテストを並行して実行して、Selenium Grid / RCを利用して、はるかに高速に実行できるようにしたいと考えています。

これがどのように達成されるかについて誰かが何か考えを持っていますか?および/または重複するテストを自動的に作成せずに複数のブラウザ環境に対してSeleniumテストをテストするためのベストプラクティス?

ありがとうございました。

4

5 に答える 5

5

このテーマに関する作業はあまりありません。本当に関係のあるものは何も見つかりませんでした。

しかし、あなたの主張はよく理解されています。最近のほとんどのマシンは、強力な1コアCPUと比較して、より多くのコアとより強力でないコアを備えています。

だから私はマイクロソフトのブログで何かを見つけました。このテクノロジーはPUnitと呼ばれ、特にマルチスレッド環境をテストするために作られています。

それは私が見つけることができるようにあなたが要求したものに可能な限り近いです:)

そこから適切なブログ投稿にアクセスできます:http://blogs.microsoft.co.il/blogs/eyal/archive/2008/07/09/punit-parallel-unit-testing-in-making.aspx

更新:リンクは無効になりました。CodePlexのプロジェクトは削除されました。

Update2:これはNUnit2.5のロードマップにあります。参照

于 2008-10-17T16:49:53.993 に答える
2

私はこれら両方の問題に自分で苦労しました。最終的に、並列で複数のテストを実行できるカスタムNunitテストランナーを開発しました。これをnunitのTaumuon.Rakija拡張機能と組み合わせると、テストを実行するブラウザーに応じて、動的にテストを作成できます。

これで、並列で必要な数のオペレーティングシステムで、できるだけ多くの種類のブラウザーに対してテストスイートを起動できるようになりました。

残念ながら、これらの問題に対する適切な解決策はまだないようです。そのため、特定の環境に合わせて自分で解決する必要があります。

于 2008-12-12T11:49:28.980 に答える
1

NUnit バージョン 3 では、テストの並行実行がサポートされます。これは、Selenium Grid でうまく機能します。

クラスに属性を追加する:[Parallelizable(ParallelScope.Self)]は、他のテスト クラスと並行してテストを実行します。

• ParallelScope.None は、テストを他のテストと並行して実行できないことを示します。

• ParallelScope.Self は、テスト自体を他のテストと並行して実行できることを示します。

• ParallelScope.Children は、テストの子孫が相互に並行して実行される可能性があることを示します。

• ParallelScope.Fixtures は、フィクスチャを互いに並行して実行できることを示します。

NUnit フレームワーク-並列-テスト-実行

于 2015-08-27T09:17:43.143 に答える
0

Task Parallel Library と DynamicObject クラスを使用して、複数のブラウザーで同じテストを並列化できます。詳細については、私の記事Running Selenium In Parallel with any .NET Unit Testing Toolを参照してください。

于 2014-09-20T19:33:06.077 に答える
0

Igor Brejc は、MbUnit を使用した並列テストの実行に関するブログ投稿を行っています。

ただし、彼は「Selenium を受け入れテストに統合したら」と言っているので、実験しているだけのようです。他の投稿が見つからないため、Selenium テストを並行して正常に実行したかどうかはわかりません。

http://igorbrejc.net/development/continuous-integration/gallio-running-tests-in-parallel

于 2009-08-13T17:15:46.923 に答える