Я использую JUnit Categories и ClassPathSuite в настройке, аналогичной описанной в этом ответе . Резюмируем:
public interface FastTests {
}
@RunWith(Categories.class)
@Categories.IncludeCategory(FastTests.class)
@Suite.SuiteClasses(AllTests.class)
public class FastTestSuite {
}
@RunWith(ClasspathSuite.class)
public class AllTests {
}
... где AllTests использует библиотека ClasspathSuite .
Тестовый класс, входящий в категорию FastTests, будет выглядеть так:
@Category(FastTests.class)
public class StringUtilsTest {
// ...
}
Когда я запускаю FastTestSuite в своей среде IDE, выполняются все тесты с аннотацией FastTests, хорошо & smooth:
Теперь, я хочу сделать то же самое с Ant . (К моему удивлению, я не смог легко найти инструкции для этого на SO.) Другими словами, мне нужен Ant цель, которая запускает все тесты с аннотацией FastTests.
Я пробовал несколько упрощенных подходов, используя
или
...
... но пока не повезло.
Edit : Помимо IDE, он отлично работает с JUnitCore в командной строке:
$ java -classpath "classes:WebContent/WEB-INF/lib/*" org.junit.runner.JUnitCore fi.foobar.FastTestSuite
.............
Time: 0.189
OK (13 tests)