わずかに異なるjarのリストでテストケースを実行する方法は?

StackOverflow https://stackoverflow.com/questions/419833

  •  05-07-2019
  •  | 
  •  

質問

同じシステムのわずかに異なるバージョンを含むjarファイルのリストがあります。

各jarファイルに対して一連のテストケースを実行する一方で、各jarの結果を(RunListenerなどを介して)取得できます。

暗示されているクラスの読み込みの問題に少し混乱しています。

どうすればうまくできますか?

役に立ちましたか?

解決

antを使用している場合、JUnitタスクはクラスパスを取ります。

<target name="test">
  <junit ...">
    <classpath>
      <pathelement path="${test.jar.path}" />
    </classpath>
    ...
  </junit>
</target>

antcallタスクを使用して、test.jar.pathプロパティの異なる値でテストターゲットを繰り返し呼び出すことができます。

他のヒント

jarが同じインターフェースを維持している場合、やらなければならないことは、少しずつ異なるクラスパスで各テストを実行することです-毎回別のバージョンのjarを使用します。

Eclipse JUnit統合を使用している場合は、N個の実行構成を作成します。クラス構成タブのそれぞれで、必要なjarを指定します。

プログラムで実行する場合は、空のクラスパスから開始し、 URLClassLoader 、毎回異なるjarのセットを提供します。

次のようなもの:

URLClassloader ucl = new URLClassLoader( list of jars from version1 );
TestCase tc = ucl.loadClass("Your Test Case").newInstance();
tc.runTest();

ucl = new URLClassLoader( list of jars from version2 );
TestCase tc = ucl.loadClass("Your Test Case").newInstance();
tc.runTest();
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top