如何自动为@SuiteClasses创建列表

时间:2013-04-18 06:32:39

标签: java junit4

我需要有可能在Maven构建过程中运行我的JUnit测试用例的子集。我决定将JUnit类别用于此目的。我创建了两个标记接口:UnitTestIntegrationTest,并将它们分配给我的JUnit测试用例。现在我需要为它们创建一个测试套件:

package ru.hive.parser;

import org.junit.experimental.categories.Categories;
import org.junit.experimental.categories.Categories.IncludeCategory;
import org.junit.runner.RunWith;
import org.junit.runners.Suite.SuiteClasses;

import ru.hive.test.UnitTest;

@RunWith(Categories.class)
@IncludeCategory(UnitTest.class)
@SuiteClasses({ SomeClass.class })
public class ParserTestSuite {

}

问题是@SuiteClasses注释,其中我需要列出我想要在测试套件中的所有类,并且我有很多(超过100个)这样的类,并且数量正在增长。如果我有自动构建类列表的方法,我会很高兴。我已经在stackoverflow上阅读了所有类似于我自己的问题,但是由于我需要使用@RunWith(Categories.class)而不是其他测试运行器,因此没有一个答案符合我的需求。任何想法如何实现这一点?

1 个答案:

答案 0 :(得分:1)

Maven能够使用类别跑步者。见这里:http://maven.apache.org/surefire/maven-surefire-plugin/examples/junit.html

您还可以使用classpath suite并修改它以使用类路径来获取类路径上的测试(如果它还没有这样做?)。

生成一长列@SuiteClasses似乎不值得。