When writing tests, it is common to find that several tests need similar
objects created before they can run. Annotating a <code>public void</code> method
with <code>@Before</code> causes that method to be run before the {@link Test} method.
The <code>@Before</code> methods of superclasses will be run before those of the current class,
unless they are overridden in the current class. No other ordering is defined.
<p>
Here is a simple example:
<pre>
public class Example {
List empty;
@Before public void initialize() {
empty= new ArrayList();
}
@Test public void size() {
...
}
@Test public void remove() {
...
}
}
</pre>
When writing tests, it is common to find that several tests need similar objects created before they can run. Annotating a <code>public void</code> method with <code>@Before</code> causes that method to be run before the {@link Test} method. The <code>@Before</code> methods of superclasses will be run before those of the current class, unless they are overridden in the current class. No other ordering is defined. <p> Here is a simple example: <pre> public class Example { List empty; @Before public void initialize() { empty= new ArrayList(); } @Test public void size() { ... } @Test public void remove() { ... } } </pre>