2017-04-18 20 views
3

SpringJUnit4ClassRunnerを使用して統合テストケースを実行しています。 今度は、@Beforeメソッドで各junitテストケースのIn memory HSQLにデータをロードし、Junit Testクラスの@Afterメソッドでデータを破棄します。 すべてのテストケースでデータロードを1回だけ実行する必要があるのは、テストフォルダ内にあります。また、すべてのテストケースの完了後に破棄する必要があります。 ビルドにはMaven、JDK8、Spring 4.2.5、そしてHSQLをメモリに使用しています。すべてのテストケースの前にデータがロードされ、すべてのテストケースの後に破棄されます

このロジックを実現するのを助けてください。

答えて

1

はい、それはすべての必要なテストクラスを含むテストスイートを作成しますJUnit - Suite Test

を使用可能です。セットアップとティアダウンの方法は

package com.test; 

import org.junit.AfterClass; 
import org.junit.BeforeClass; 
import org.junit.runner.RunWith; 
import org.junit.runners.Suite; 
import org.junit.runners.Suite.SuiteClasses; 

@RunWith(Suite.class) 
@SuiteClasses({Test1.class, Test2.class}) 
public class TestSuite { 

    @BeforeClass 
    public static void setUp() { 
     // Set up database 
    } 

    @AfterClass 
    public static void tearDown() { 
     // Cleanup codes 
    } 

} 

ここに設定して、あなたのテストクラス通常

パッケージcom.testを作成します。

import org.junit.Test; 

@RunWith(SpringJUnit4ClassRunner.class) 
@ContextConfiguration(locations = { "classpath:context.xml" }) 
public class Test1 { 
    @Test 
    public void test1() { 
     System.out.println("test1"); 
    } 

} 
+0

私は@RunWith(SpringJUnit4ClassRunner.class)を使用しています.Butあなたのソリューションは、私.Clarify @RunWith(Suite.class)です。 – Ramkumar

+0

@ user3669712テストクラスに@RunWith(SpringJUnit4ClassRunner.class)アノテーションを追加しました。自分のコードを更新しました。 – mirmdasif

+0

@DOテストケースを実行するにはテストランナーが必要ですか? TestsuiteまたはTest1を実行する必要があります – Ramkumar

関連する問題