Fix JUnitParamsRunner so it works with CTS sharding am: b03560c325 am: 2f41cd20c0 am: f58521195e am: 55edd63fa3
am: c27747cb91

Change-Id: I342667526228eff6b871ee33baa94b71d8cc420d
tree: b4227f625f29e2426693f940545b2883b51fbe5d
  2. LICENSE.txt
  6. README.version
  8. apidocs/
  9. lib/
  10. pom.xml
  11. src/


Build Status Coverage Status Maven Central

Parameterised tests that don't suck


public class PersonTest {

  @Parameters({"17, false", 
               "22, true" })
  public void personIsAdult(int age, boolean valid) throws Exception {
    assertThat(new Person(age).isAdult(), is(valid));

See more examples

Latest News


JUnitParams project adds a new runner to JUnit and provides much easier and readable parametrised tests for JUnit >=4.6.

Main differences to standard JUnit Parametrised runner:

  • more explicit - params are in test method params, not class fields
  • less code - you don't need a constructor to set up parameters
  • you can mix parametrised with non-parametrised methods in one class
  • params can be passed as a CSV string or from a parameters provider class
  • parameters provider class can have as many parameters providing methods as you want, so that you can group different cases
  • you can have a test method that provides parameters (no external classes or statics anymore)
  • you can see actual parameter values in your IDE (in JUnit‘s Parametrised it’s only consecutive numbers of parameters):


JUnitParams is available as Maven artifact:


If you want to see just one simple test class with all main ways to use JUnitParams see here:

You can also have a look at Wiki:Quickstart

Note: We are currently moving the project from Google Code to Github. Some information may still be accessible only at