2014-09-30 102 views
3

我有一個場景,我想忽略整個junit測試類,其中包含一組基於特定布爾值的測試方法,我正在從屬性文件中讀取該測試方法。該屬性是一個布爾值。如果爲false,則應該跳過執行整個測試類。Junit:忽略或跳過整個測試類

我嘗試使用@Ignore註釋但不確定是否可以用於這種情況。

請幫忙。

問候,

+0

@Ignore不能使用,因爲它沒有參數。 – 2014-09-30 08:04:33

回答

3

據我所知,@Ignore不會幫助你在這裏。 嘗試使用Assume有一些類似的(如果假設失敗,則測試將如下忽略當然,你可以把所有的測試方法,假設,如果決定並不明智類):

import org.junit.Assume; 
import org.junit.BeforeClass; 
import org.junit.Test; 

public class TestWithAssume { 

    @BeforeClass 
    public static void beforeClass() throws Exception { 
     Assume.assumeTrue(true); // LOAD THE VALUE FROM THE PROPERTIES FILE AS NEEDED... 
    } 

    @Test 
    public void test1() throws Exception { 
    } 

    @Test 
    public void test2() throws Exception { 
    } 

} 
+0

嗨Shlomi,是否有可能使用@BeforeClass註釋如果我的測試類擴展了一些基類/父類? – Anand03 2014-09-30 13:24:18

+0

我這麼認爲...最好的方法是嘗試看看。寫一個簡單的構造,模仿你的代碼,就像我在簡單的代碼片段中做的一樣,並在每個階段添加println()。運行它並查看執行的內容和順序。 – shlomi33 2014-09-30 13:49:34

相關問題