2016-10-05 119 views
-1

我有一個接口(Clause.java)和兩個實現類(OrderClause.java和GroupClause.java) 我無法創建Clause.java類的實例 請參閱我ClauseTest類示例:如何在java中實現一個接口和多個實現類的junit

@RunWith(SpringJUnit4ClassRunner.class) 
@ContextConfiguration(locations = "classpath*:config/applicationContextList.xml") 
public class ClauseTest { 

    public ClauseTest() { 
    } 

    @BeforeClass 
    public static void setUpClass() throws Exception { 
    } 

    @AfterClass 
    public static void tearDownClass() throws Exception { 
    } 

    @Before 
    public void setUp() { 
    } 

    @After 
    public void tearDown() { 
    } 

    /** 
    * Test of getQueryString method, of class Clause. 
    */ 
    @Test 
    public void testGetQueryString() { 
     System.out.println("getQueryString"); 
     Clause instance = new ClauseImpl(); 
     String expResult = ""; 
     String result = instance.getQueryString(); 
     assertEquals(expResult, result); 
     fail("The test case is a prototype."); 
    } 
+3

提示:所有不會爲您的源代碼增加值的是**廢棄**。你不需要一個空的默認構造函數;你不需要所有那些之前/之後/上/下方法。刪除它們。然後 - 你的問題不清楚 - 因爲你展示的代碼看起來是正確的。所以請閱讀「如何問代碼不工作」的問題。 – GhostCat

+0

好的。如何創建Clause類的實例 –

回答

1

你寫Clause是一個接口,而不是類。你不能直接實例化接口。您需要創建一個實現該接口的類的實例:

Clause instance = new OrderClause();