Package org.junit

Annotation Interface BeforeClass


@Retention(RUNTIME) @Target(METHOD) public @interface BeforeClass
Sometimes several tests need to share computationally expensive setup (like logging into a database). While this can compromise the independence of tests, sometimes it is a necessary optimization. Annotating a public static void no-arg method with @BeforeClass causes it to be run once before any of the test methods in the class. The @BeforeClass methods of superclasses will be run before those of the current class, unless they are shadowed in the current class.

For example:

 public class Example {
    @BeforeClass public static void onlyOnce() {
       ...
    }
    @Test public void one() {
       ...
    }
    @Test public void two() {
       ...
    }
 }
 
Since:
4.0
See Also: