私は interface を書きましたMyInterface
。これは、さまざまな実装者によって実装される予定です。
MyInterfaceTest
また、すべての実装者が実装をテストするために使用できる汎用テスト メソッドを含むclass も作成しました。
JUnitテストとして機能させる方法がわかりません。
現在、私は次のようなものを持っています:
public class MyInterfaceTest {
private static MyInterface theImplementationToTest = null;
@BeforeClass public static void setUpBeforeClass() throws Exception {
// put your implementation here:
theImplementationToTest = new Implementation(...);
}
@AfterClass public static void tearDownAfterClass() throws Exception {
theImplementationToTest = null;
}
@Test public void test1() { /* uses theImplementationToTest */ }
@Test public void test2() { /* uses theImplementationToTest */ }
}
各実装の初期化に時間がかかるため、静的メソッドを使用するsetUpBeforeClass
ため、すべてのテストで一度初期化したいと考えています。
このバージョンのテストでは、実装者はコードを変更しsetUpBeforeClass
て独自の実装を配置する必要があります。
を記述する別の方法があると確信しているMyInterfaceTest
ため、実装者はそれを継承するか、パラメーターを送信するだけでよく、コードを変更する必要はありません。ただし、JUnit を機能させるのに十分な経験がありません。これを行う方法を教えてください。