我有以下测试类:
TestClass1 (10 tests)
TestClass2 (20 tests)
TestClass3 (15 tests)
TestClass4 (25 tests)
我想创建一个名为
的测试类 SmallTestClass
从TestClass1执行2个测试,从TestClass2执行3个测试,从TestClass3执行5个测试,从TestClass4执行4个测试
如何实现这一目标?我使用spring framework和junit 4
答案 0 :(得分:1)
你需要Junit 4 Category
和Suite
的组合来实现这一目标。请注意,Category
仍然是一个实验性功能,已在v4.8
中引入。
以下示例仅确保仅运行someTest1()
(我自己使用v4.11
进行测试),因为它被归类为SanityTest
。
聚合器:
import org.junit.experimental.categories.Categories;
import org.junit.experimental.categories.Categories.IncludeCategory;
import org.junit.runner.RunWith;
import org.junit.runners.Suite.SuiteClasses;
@RunWith (Categories.class)
@SuiteClasses (SomeTest.class)
@IncludeCategory (SanityTests.class)
public class JunitSuiteTest {
}
包含实际测试的类:
import org.junit.Test;
import org.junit.experimental.categories.Category;
public class SomeTest {
@Test
@Category (SanityTests.class)
public void someTest1()
{
System.out.println("test 1");
}
@Test
public void someTest2()
{
System.out.println("test 2");
}
}
帮助分类的标记类:
public class SanityTests {
}