@RunWith(Parameterized.class) public class FibonacciTest { @ClassRule public static final SpringClassRule SCR = new SpringClassRule(); @Rule public final SpringMethodRule springMethodRule = new SpringMethodRule(); long input; long output; public FibonacciTest(long input, long output) { this.input = input; ...} @Test public void testFibonacci() { Assert.assertEquals(output, fibonacci(input)); } public List params() { return Arrays.asList(new Long[][] { {0, 0}, {1, 1} }); } }
@RunWith(Parameterized.class) @ContextConfiguration(classes = TestConfig.class) public class MyTest { @Autowired private DataSource dataSource; private final int param; @Parameterized.Parameters public static List
@RunWith(Parameterized.class) @ContextConfiguration(locations = {"/test-context.xml", "/mvc-context.xml"}) @WebAppConfiguration @ActiveProfiles("test-profile") public class MyTest { @Parameters public static Collection
@UseParametersRunnerFactory(SpringParametersRunnerFactory.class) @RunWith(Parameterized.class) @ContextConfiguration(locations = {"/test-context.xml", "/mvc-context.xml"}) @WebAppConfiguration @Transactional @TransactionConfiguration public class MyTransactionalTest { @Parameters public static Collection params() throws Exception { final MyTransactionalTest fakeInstance = new MyTransactionalTest(); final TestContextManager contextManager = new TestContextManager(MyTransactionalTest.class); contextManager.prepareTestInstance(fakeInstance); final WebApplicationContext context = fakeInstance.context; // Do what you need with Spring context, you can even access web resources final Resource[] files = context.getResources("path/files"); final List params = new ArrayList<>(); for (Resource file : files) { params.add(new Object[] {file}); } return params; } @Parameter public Resource file; @Autowired private WebApplicationContext context; }