2014-10-03 69 views
1

我使用TDD啓動了一個項目。爲JUnit創建接口

我有幾個parsers實現相同的接口。

他們每個人都有不同的具體接口的實現。

雖然測試他們,我只是一次又一次地重複每一個相同的測試。

想知道是否有可能創建所有JUnits的一個接口,而實現它,我只會把它作爲:

@Override 
@Test 
public void testMethodA() 
{ 
    // TODO Auto-generated method stub 

} 

@Override 
@Test 
public void testMethodB() 
{ 
    // TODO Auto-generated method stub 

} 

取而代之的副本和以往每次手動創建測試減速? 以及當類接口的改變,我需要添加到每個測試和等了JUnit的..

底線,

我想自動生成一個空的測試用例爲每一類由實現和接口,我會在通用的解析器測試中聲明。有沒有辦法做到這一點使用eclipse

+0

這不是100%清楚。你是說你想爲每個類自動生成一個空的測試用例嗎? – 2014-10-03 07:15:07

+2

您可以簡單地定義一個基類,其中包含所有解析器共有的所有測試,併爲每個解析器實現定義一個子類,其唯一工作是創建要測試的解析器。 – 2014-10-03 07:18:25

+0

是的,我想自動生成一個空的測試用例,每個類通過實現和接口,我將在通用的解析器測試聲明。 有沒有辦法做到這一點? – USer22999299 2014-10-03 07:20:35

回答

1

目前我寫使用JUnit 4和硒的webdriver爲我公司project.I面對像you.So同樣的問題,我創建擴展junit.framework.TestCase和寫入所有JUnit的所有常用方法基地測試用例的一個集成測試用例類。看樣實現,

public class BaseTestCase extends TestCase { 

    @Before 
    public void setUp() throws Exception { 
     //Do something. 
    } 

    @After 
    public void tearDown() throws Exception { 
     //Do something. 
    } 

    protected boolean isElementPresent() { 
     //Do something. 
     return true; 
    } 
    .... 

} 

我擴展了我所有的特定的JUnit classes.See的基礎測試用例

public class LoginTest extends BaseTestCase { 
     ... 
} 

public class FooTest extends BaseTestCase { 
     ... 
} 

我只是分享我的方式來you.It是不能確定的解決方案你需要什麼。在Eclipse中沒有插件或功能用於生成現成的JUnit測試用例。

+0

非常感謝,再好不過了:) – USer22999299 2014-10-03 10:02:24