2014-09-30 99 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

相关问题