org.junit.experimental.categories
Class Categories
java.lang.Object
org.junit.runner.Runner
org.junit.runners.ParentRunner<Runner>
org.junit.runners.Suite
org.junit.experimental.categories.Categories
-
All Implemented Interfaces:
-
Describable,
Filterable,
Orderable,
Sortable
-
public class Categories
-
extends
Suite
From a given set of test classes, runs only the classes and methods that are annotated with either the category given with the @IncludeCategory annotation, or a subtype of that category.
Note that, for now, annotating suites with @Category
has no effect. Categories must be annotated on the direct method or class.
Example:
public interface FastTests {
}
public interface SlowTests {
}
public interface SmokeTests
}
public static class A {
@Test
public void a() {
fail();
}
@Category(SlowTests.class)
@Test
public void b() {
}
@Category({FastTests.class, SmokeTests.class})
@Test
public void c() {
}
}
@Category({SlowTests.class, FastTests.class})
public static class B {
@Test
public void d() {
}
}
@RunWith(Categories.class)
@IncludeCategory(SlowTests.class)
@SuiteClasses({A.class, B.class})
// Note that Categories is a kind of Suite
public static class SlowTestSuite {
// Will run A.b and B.d, but not A.a and A.c
}
Example to run multiple categories:
@RunWith(Categories.class)
@IncludeCategory({FastTests.class, SmokeTests.class})
@SuiteClasses({A.class, B.class})
public static class FastOrSmokeTestSuite {
// Will run A.c and B.d, but not A.b because it is not any of FastTests or SmokeTests
}
-
See Also:
-
Categories at JUnit wiki
Methods inherited from class org.junit.runners.ParentRunner |
childrenInvoker, classBlock, classRules, collectInitializationErrors, createTestClass, filter, getDescription, getName, getRunnerAnnotations, getTestClass, isIgnored, order, run, runLeaf, setScheduler, sort, validatePublicVoidNoArgMethods, withAfterClasses, withBeforeClasses, withInterruptIsolation |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Categories
public Categories(Class<?> klass,
RunnerBuilder builder)
throws InitializationError
-
Throws:
-
InitializationError
Copyright © 2002–2021
JUnit. All rights reserved.