完了するのに1分かかるセレンテストがあります。これを 1000 回実行したい場合は、16 時間待たなければなりません。3 時間で実行できるように、5 つのテストを並行して実行する方法はありますか? JUnit テスト スクリプトを生成し、複数のスレッドで実行しようとしましたが、同じ Firefox ウィンドウを使用してしまいます。これをグリッドで実行したくないのは、5 Firefox ウィンドウを実行してもリソースをあまり消費しないためです。
ありがとう
完了するのに1分かかるセレンテストがあります。これを 1000 回実行したい場合は、16 時間待たなければなりません。3 時間で実行できるように、5 つのテストを並行して実行する方法はありますか? JUnit テスト スクリプトを生成し、複数のスレッドで実行しようとしましたが、同じ Firefox ウィンドウを使用してしまいます。これをグリッドで実行したくないのは、5 Firefox ウィンドウを実行してもリソースをあまり消費しないためです。
ありがとう
以下のロジックを使用すると、junit ケースを並行して実行できます。
Class[] cls={test1.class,test2.class,test3.class,test4.class};
JUnitCore.runClasses(new ParallelComputer(true,false),cls);
上記のメソッドでは、ParallelComputer() の最初のパラメーターはクラスを示し、2 番目のパラメーターはメソッド用です。ここでは、クラスを並行して実行していますが、メソッドは実行していません。
ParallelComputer クラスのドキュメント
http://junit-team.github.io/junit/javadoc/4.10/org/junit/experimental/ParallelComputer.html
この例を試してみて ください http://mycila.googlecode.com/svn/sandbox/src/main/java/com/mycila/sandbox/junit/runner/ 起動するファイルは MySuite.java です。私にとってはうまくいきます。