Junit4 Test Suit使用

编写完Testcase,一般需要将Testcase组织成Testsuite,这样可以一次跑多个Testcase类。JUnit4中组织Testcase的方式有多种。

通过Annotation
最简单的还是通过annotation。下面的类就是通过Annotation来将多个Testcase组织成一个Suite。

package test.Junit4;
import org.junit.runner.RunWith;
import org.junit.runners.Suite;


@RunWith(Suite.class)
@Suite.SuiteClasses({TestA.class,TestB.class})
public class TestSuit {

}
;

上面的类不需要代码,就俩标注就行了。一个@org.junit.runner.RunWith,一个@org.junit.runners.Suite。@RunWith表示这个类将以哪种形式来跑。后面的类型必须是Runner接口的实现。在这里指定为Suite。@Suite.SuiteClasses则可以包含多个test unit类。

@Suite.SuiteClasses中的类也可以指定另一个TestSuite,这样就可以有多个包含层次了。不过其中的Test unit不能间接或者直接的包含当前类,否则就死循环了嘛。

这个类在Eclipse里面是可以直接Run As JUnit Test的。



package test.Junit4;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;

public class TestA
{
        //这个构造函数必须有
	public TestA()
	{
		
	}
	@Before
	public void before()
	{
		System.out.println("TestA begin!");
	}
	
	@Test
	public void test()
	{
		System.out.println("TestA doing!");
	}
	
	@After
	public void after()
	{
		System.out.println("TestA end!");
	}
} ;



package test.Junit4;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;

public class TestB
{
	public TestB()
	{
		
	}
	@Before
	public void before()
	{
		System.out.println("TestB begin!");
	}
	
	@Test
	public void test()
	{
		System.out.println("TestB doing!");
	}
	
	@After
	public void after()
	{
		System.out.println("TestB end!");
	}
} ;

你可能感兴趣的:(Junit4 Test Suit使用)