JUnit 3 で次のバージョンのテストを行い、それを JUnit 4 に変換しようとしましたが、成功しませんでした。アイデアは、インターフェース、たとえばインターフェースの実際のテストを行うベーステストケースを持つことServiceです。ServiceImpl基本テスト ケースを使用して、クラスをテストしたいと考えています。
public abstract class ServiceBaseTest extends TestCase {
保護されたサービス サービス。
保護された抽象サービス getService();
@オーバーライド
public void setUp() {
サービス = getService();
}
public void testMethod(){
//テストコード
}
...
}
ServiceImplTest次のようなクラス:
public class ServiceImplTest extends ServiceBaseTest {
@オーバーライド
public void setUp() {
サービス = 新しい ServiceImpl();
}
}
TestCase拡張機能を削除して、メソッドに @BeforeClass を使用できることを認識していsetupます。ただし、違いは@BeforeClass、メソッドが である必要があるsetupことstaticです。これは、キーワードgetService()と競合するため、静的にできないため、私にとっては注意が必要です。abstract
Question:JUnit 4を使用して、代替手段を実装するクリーンな方法はありますか?