位置:首页 > Java技术 > JUnit在线教程 > 创建套件测试

创建套件测试

在本节中,我们将学习如何创建套件测试。测试套件是一些测试不同类用例,可以使用@RunWith和@Suite注解运行所有东西在一起。如果有很多测试类,想让它们都运行在同一时间,而不是单一地运行每个测试,这是非常有用的。

当一个类被注解为@RunWith, JUnit 将调用被在其中注解,以便运行测试类,而不使用内置的 JUnit 运行方法。

基于前面的章节中的类,我们可以创建两个测试类。一个类将测试公共方法 prepareMyBag()和其他测试类将测试方法 addPencils()。因此,我们最终将有以下两个类:

PrepareMyBagTest.java

package com.yiibai.junit;

import org.junit.Test;
import static org.junit.Assert.*;

public class PrepareMyBagTest {

	FirstDayAtSchool school = new FirstDayAtSchool();

	String[] bag = { "Books", "Notebooks", "Pens" };

	@Test
	public void testPrepareMyBag() {

		System.out.println("Inside testPrepareMyBag()");
		assertArrayEquals(bag, school.prepareMyBag());

	}

}

AddPencilsTest.java

package com.yiibai.junit;

import org.junit.Test;
import static org.junit.Assert.*;

public class AddPencilsTest {

	FirstDayAtSchool school = new FirstDayAtSchool();

	String[] bag = { "Books", "Notebooks", "Pens", "Pencils" };

	@Test
	public void testAddPencils() {

		System.out.println("Inside testAddPencils()");
		assertArrayEquals(bag, school.addPencils());

	}

}

现在,我们将创建一个测试套件,以便运行上面的类在一起。用鼠标右键单击 test 源文件夹,并创建一个新的名为SuiteTest.java 的Java类,使用下面的代码:

SuiteTest.java

package com.yiibai.junit;

import org.junit.runner.RunWith;
import org.junit.runners.Suite;

@RunWith(Suite.class)
@Suite.SuiteClasses({ PrepareMyBagTest.class, AddPencilsTest.class })
public class SuitTest {

}

使用@ Suite.SuiteClasses注解,你可以定义测试类,将被列入执行。

所以,如果用鼠标右键单击测试套件并选择 Run As -> JUnit Test, 两个测试类与已经在@ Suite.SuiteClasses注解定义的顺序执行。