2012-06-17 92 views
1

我想創建一個junit測試套件,它將運行應用程序中的所有測試套件... - 這是我所擁有的,並且據我所知,應該工作,但它一直告訴我沒有發現任何測試。JUnit應用程序套件測試

import static org.junit.Assert.*; 

import org.junit.Test; 

/** 
* @author Jason 
* 
*/ 

@Test 
public class applicationTest extends TestCase { 

    public applicationTestSuite(String name) { 
     super(name); 
    } 

    public static Test suite() { 
     TestSuite suite = new TestSuite("ApplicationTestSuite"); 
     suite.addTest(domain.AllDomainTests.suite()); 
     suite.addTest(services.AllServicesTests.suite()); 
     suite.addTest(business.AllBusinessTests.suite()); 
     return suite; 
    } 
} 

測試套件應該是運行中的一個例子 -

package business; 

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

@RunWith(Suite.class) 
@SuiteClasses({ ItemMgrTest.class }) 
public class AllBusinessTests { 

} 

回答

0

您可以在@SuiteClasses指定套件類,例如:

@RunWith(Suite.class) 
@SuiteClasses({ AllBusinessTests.class }) 
public class AllTests { 

} 

套房()方法是JUnit的3件事,並且在您的套件中找不到任何方法或測試,因爲您正在使用JUnit 4.

1

你需要標記的測試方法@Test註釋

API文檔

Test註解告訴JUnit公共void方法它可以作爲測試用例運行。爲了運行該方法,JUnit首先構造該類的新實例,然後調用帶註釋的方法。測試引發的任何異常都將由JUnit報告爲失敗。如果沒有異常拋出,假設測試已經成功[...]

+0

單個測試套件自行運行正常......它是不起作用的聚合測試套件。 – Expecto