• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# JUnitParams
2
3[![Build Status](https://secure.travis-ci.org/Pragmatists/JUnitParams.png)](http://travis-ci.org/Pragmatists/JUnitParams) [![Coverage Status](https://coveralls.io/repos/Pragmatists/JUnitParams/badge.svg)](https://coveralls.io/r/Pragmatists/JUnitParams) [![Maven Central](https://maven-badges.herokuapp.com/maven-central/pl.pragmatists/JUnitParams/badge.svg)](https://maven-badges.herokuapp.com/maven-central/pl.pragmatists/JUnitParams)
4
5*Parameterised tests that don't suck*
6
7## Example
8
9``` java
10@RunWith(JUnitParamsRunner.class)
11public class PersonTest {
12
13  @Test
14  @Parameters({"17, false",
15               "22, true" })
16  public void personIsAdult(int age, boolean valid) throws Exception {
17    assertThat(new Person(age).isAdult(), is(valid));
18  }
19
20}
21```
22See more [examples](https://github.com/Pragmatists/JUnitParams/blob/master/src/test/java/junitparams/usage/SamplesOfUsageTest.java)
23
24
25## Latest News
26
27* 2015-01-23 JUnitParams 1.0.4 released. Check [release info.](RELEASES.md)
28[more here](https://github.com/Pragmatists/JUnitParams/wiki)
29
30## About
31JUnitParams project adds a new runner to JUnit and provides much easier and readable parametrised tests for JUnit >=4.6.
32
33Main differences to standard JUnit Parametrised runner:
34
35* more explicit - params are in test method params, not class fields
36* less code - you don't need a constructor to set up parameters
37* you can mix parametrised with non-parametrised methods in one class
38* params can be passed as a CSV string or from a parameters provider class
39* parameters provider class can have as many parameters providing methods as you want, so that you can group different cases
40* you can have a test method that provides parameters (no external classes or statics anymore)
41* you can see actual parameter values in your IDE (in JUnit's Parametrised it's only consecutive numbers of parameters):
42
43## Quickstart
44
45JUnitParams is available as Maven artifact:
46```
47<dependency>
48  <groupId>pl.pragmatists</groupId>
49  <artifactId>JUnitParams</artifactId>
50  <version>1.0.4</version>
51  <scope>test</scope>
52</dependency>
53```
54
55If you want to see just one simple test class with all main ways to use JUnitParams see here:
56https://github.com/Pragmatists/junitparams/tree/master/src/test/java/junitparams/usage
57
58You can also have a look at [Wiki:Quickstart](https://github.com/Pragmatists/junitparams/wiki/Quickstart)
59
60**Note**: We are currently moving the project from Google Code to Github. Some information may still be accessible only at https://code.google.com/p/junitparams/
61