DRY のために、親クラスで ContextConfiguration を定義し、すべてのテスト クラスにそれを継承させたいと考えています。
親クラス:
package org.my;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = "/org/my/Tests-context.xml")
public abstract class BaseTest {
}
子クラス:
package org.my;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(inheritLocations = true)
public class ChildTest extends BaseTest {
@Inject
private Foo myFoo;
@Test
public void myTest() {
...
}
}
ContextConfiguration docs によると、親の場所を継承できるはずですが、機能させることができません。Spring はまだデフォルトの場所 ( ) でファイルを探しており、/org/my/ChildTest-context.xml
見つからない場合は barfs を探しています。私は運がないので、次のことを試しました:
- 親クラスを具体化する
- 親クラスへのノーオペレーション テストの追加
- 注入されたメンバーを親クラスにも追加する
- 上記の組み合わせ
私はスプリングテスト 3.0.7 と JUnit 4.8.2 を使用しています。