DUE TO SPAM, SIGN-UP IS DISABLED. Goto Selfserve wiki signup and request an account.
Parameterized Tests
With the parameterized test feature of JUnit, you can test the same functionalities with different parameters (https://github.com/junit-team/junit4/wiki/Parameterized-tests). To do so, you need to add at least two annotations of @RunWith and @Parameters to your test class. Here is an example from the JUnit wiki page (https://github.com/junit-team/junit4/wiki/Parameterized-tests#identify-individual-test-cases).
import static org.junit.Assert.assertEquals;
import java.util.Arrays;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import org.junit.runners.Parameterized.Parameters;
@RunWith(Parameterized.class)
public class FibonacciTest {
@Parameters(name = "{index}: fib({0})={1}")
public static Iterable<Object[]> data() {
return Arrays.asList(new Object[][] {
{ 0, 0 }, { 1, 1 }, { 2, 1 }, { 3, 2 }, { 4, 3 }, { 5, 5 }, { 6, 8 }
});
}
private int input;
private int expected;
public FibonacciTest(int input, int expected) {
this.input = input;
this.expected = expected;
}
@Test
public void test() {
assertEquals(expected, Fibonacci.compute(input));
}
}
public class Fibonacci {
...
}
It is highly recommended to provide a test name explicitly to easily figure out failed tests.