Parameterised tests that don't suck

Related tags

Testing JUnitParams
Overview

JUnitParams

Build Status Coverage Status Maven Central

Parameterised tests that don't suck

Example

@RunWith(JUnitParamsRunner.class)
public class PersonTest {

  @Test
  @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

  • 2017-11-03 JUnitParams 1.1.1 released. Check release info.

more news here

About

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

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):

Quickstart

JUnitParams is available as Maven artifact:

<dependency>
  <groupId>pl.pragmatists</groupId>
  <artifactId>JUnitParams</artifactId>
  <version>1.1.1</version>
  <scope>test</scope>
</dependency>

To use JUnitParams in a Gradle build add this to your dependencies:

testCompile 'pl.pragmatists:JUnitParams:1.1.1'

If you want to see just one simple test class with all main ways to use JUnitParams see here: https://github.com/Pragmatists/junitparams/tree/master/src/test/java/junitparams/usage

You can also have a look at Wiki:Quickstart

Integration with Spring framework

Since spring version 4.2 it is possible to integrate JUnitParams and spring. More about this here.

Comments
  • Add methodParams attribute for Parameters

    Add methodParams attribute for Parameters

    This PR is about adding the ability to pass parameters to "parameters providing method" in the @Parameters annotation's method attribute.

    This is just my quick hack, so it's ok if you feel that this is too hackish or that this doesn't comply to unit testing standard. This works in mine, so I would like to try my luck to see whether you like this idea also =)

    opened by justhalf 16
  • InitializationError when running JUnit: java.lang.IllegalAccessError: tried to access method org.junit.runners.BlockJUnit4ClassRunner.validateFields(Ljava/util/List;)V from class junitparams.JUnitParamsRunner

    InitializationError when running JUnit: java.lang.IllegalAccessError: tried to access method org.junit.runners.BlockJUnit4ClassRunner.validateFields(Ljava/util/List;)V from class junitparams.JUnitParamsRunner

    Hi,

    I have a background using TestNG and have seen a need for a better parameterized test in JUnit. After googling I found JUnitParams that looks promising. But I have a problem. If I try to use it I get initialization error:

    java.lang.IllegalAccessError: tried to access method org.junit.runners.BlockJUnit4ClassRunner.validateFields(Ljava/util/List;)V from class junitparams.JUnitParamsRunner
    	at junitparams.JUnitParamsRunner.collectInitializationErrors(JUnitParamsRunner.java:405)
    	at org.junit.runners.ParentRunner.validate(ParentRunner.java:344)
    	at org.junit.runners.ParentRunner.(ParentRunner.java:74)
    	at org.junit.runners.BlockJUnit4ClassRunner.(BlockJUnit4ClassRunner.java:55)
    	at junitparams.JUnitParamsRunner.(JUnitParamsRunner.java:393)
    	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
    	at org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:31)
    	at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:24)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:57)
    	at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:29)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:57)
    	at org.junit.internal.requests.ClassRequest.getRunner(ClassRequest.java:24)
    	at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.createUnfilteredTest(JUnit4TestLoader.java:84)
    	at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.createTest(JUnit4TestLoader.java:70)
    	at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.loadTests(JUnit4TestLoader.java:43)
    	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:444)
    	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
    	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
    	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
    
    I have copied PersonTest from https://github.com/Pragmatists/JUnitParams/tree/master/src/test/java/junitparams/usage/person_example and I use the following versions (in Gradle format):
             testCompile 'junit:junit:4.10'
             testCompile 'pl.pragmatists:JUnitParams:1.0.5'
             testCompile 'org.assertj:assertj-core:3.6.1'
    
    And I use java JDK 1.8.0_72.

    Here is the top of PersonTest (same as from resource mentioned above, just a different package).

    package examples.personExample;
    
    import static org.assertj.core.api.Assertions.assertThat;
    
    import org.junit.Test;
    import org.junit.runner.RunWith;
    
    import junitparams.JUnitParamsRunner;
    import junitparams.Parameters;
    import junitparams.naming.TestCaseName;
    
    @RunWith(JUnitParamsRunner.class)
    public class PersonTest {
    
      @Test
      @Parameters({
          "17, false",
          "22, true"})
      public void isAdultAgeDirect(int age, boolean valid) throws Exception {
        assertThat(new Person(age).isAdult()).isEqualTo(valid);
      }
    
      @Test
      @Parameters(method = "adultValues")
      public void isAdultAgeDefinedMethod(int age, boolean valid) throws Exception {
        assertThat(new Person(age).isAdult()).isEqualTo(valid);
      }
    

    Have also tried to debug this but it seems hard to pinpoint the problem. Did get same initializationError when just adding JUnitParamsRunner and @Parameters to an existing test case.

    So, have I missed anything obvious?

    / Per Westling, Sweden

    opened by perwestling 10
  • Added @Nullable support for all other Object types

    Added @Nullable support for all other Object types

    @Nullable is quite handy annotation, but the current version just supports java.lang.String. In this pull request I have added also support for the other types.

    The other change is deprecation of nullIdentifier() and was added value()alias. A user can directly change the identifier by specifying @Nullable("myNull"). The old variant @Nullable(nullIdentifier = "myNull") is quite verbose.

    opened by peterjurkovic 9
  • Exception when running tests: java.lang.NoSuchMethodError: org/junit/runner/Description.createTestDescription(Ljava/lang/String;Ljava/lang/String;Ljava/io/Serializable;)Lorg/junit/runner/Description;

    Exception when running tests: java.lang.NoSuchMethodError: org/junit/runner/Description.createTestDescription(Ljava/lang/String;Ljava/lang/String;Ljava/io/Serializable;)Lorg/junit/runner/Description;

    Hello,

    When using JUnitParams 1.0.4 with JUnit 4.10 I run into this exception when I run my unit tests:

    java.lang.NoSuchMethodError: org/junit/runner/Description.createTestDescription(Ljava/lang/String;Ljava/lang/String;Ljava/io/Serializable;)Lorg/junit/runner/Description;
    at junitparams.internal.TestMethod.describe(TestMethod.java:106)
    at junitparams.internal.ParameterisedTestClassRunner.describeParameterisedMethod(ParameterisedTestClassRunner.java:162)
    at junitparams.JUnitParamsRunner.describeMethod(JUnitParamsRunner.java:460)
    at junitparams.internal.ParametrizedTestMethodsFilter.filteredMethods(ParametrizedTestMethodsFilter.java:30)
    at junitparams.JUnitParamsRunner.getListOfMethods(JUnitParamsRunner.java:456)
    at junitparams.JUnitParamsRunner.getDescription(JUnitParamsRunner.java:445)
    at org.junit.runner.Runner.testCount(Runner.java:38)
    at org.eclipse.jdt.internal.junit4.runner.JUnit4TestClassReference.countTestCases(JUnit4TestClassReference.java:30)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.countTests(RemoteTestRunner.java:487)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:455)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
    

    I tried using JUnitParams 1.0.0 and it worked successfully.

    Regards,

    Walter

    opened by wjbolles 9
  • test class with @parameter method is always instantiated.

    test class with @parameter method is always instantiated.

    When I run only one test class, one of test classes with @parameter method is always instantiated. If I remove parameter annotation, the only one test is executed.

    How can I prevent test class with @parameter not to be instantiated?

    opened by anyone-can-test 8
  • Parameters on BeforeClass

    Parameters on BeforeClass

    Current Scenario: I initialize some variables in BeforeClass method and keep them as members. Since, I do some processing on files, to optimize tests, I just do them once in the @BeforeClass method, and have asserts in different tests.

    Requirement: I want to test multiple files, and hence was thinking may be there is some way I can call BeforeClass with each file and call all of the tests again with the new members.

    Is there any way to do this? Maybe some class level params?

    opened by devkhan 8
  • Support for Hierarchical Context runner

    Support for Hierarchical Context runner

    JUnit 4.12 supports Hierarchical context runner so it would be great if we can provide that support in JUnitParamsRunner

    
    @Runwith(JunitParamsHeirarchicalRunner.class)
    public class ParentContext {
    
       // some tests go here
    
       @Runwith(JunitParamsHeirarchicalRunner.class)
       public class ChildContext {
            //some other tests go here
            ...
       }
    }
    
    enhancement 
    opened by npathai 7
  • Enabling of the simlple feature to use NULLs within @Parameters

    Enabling of the simlple feature to use NULLs within @Parameters

    Currently there is no possibility to use exactly null values within annotation. One should create method and instantiate all the stuff from there.

    This commit enables such feature, that we can use null values within annotation declaration. One should just declare null as '/null/' and thus it will be parsed and inferred.

    opened by fdesu 6
  • Add method for creating combinations of arrays and a @CombinedParamet…

    Add method for creating combinations of arrays and a @CombinedParamet…

    …ers to use it.

    Solution to Issue #1

    That's probably not the best way to implement this functionality...

    • Should I add separate strategies for generating parameters or add the logic to the existing ones?
    • There's probably a lot of oom for improvement in method/variable names
    • What about the annotation name?
    • Should @CombinedParameters take values (i.e. it's enough to annotate a test method with it alone) or should it take them from @Parameters (i.e it's necessary to annotate a method with both @CombinedParameters and @Parameters)?

    Looking forward to your comments :)

    opened by maciejp 6
  • (just a question) Plan to merge with JUnit?

    (just a question) Plan to merge with JUnit?

    JUnit has Parameterize now: https://github.com/junit-team/junit/wiki/Parameterized-tests

    but I like this JUnitParams code better, using an annotation. (You can look at the data and the implementation in 1 screenful. I already liked the similar feature in py.test, the Python test framework which uses decorators to parameterize.)

    Is there a plan to get JUnitParams into JUnit, or will this remain as a independent plugin?

    opened by floer32 6
  • Performance degradation

    Performance degradation

    When many test cases are run, the JUnitParamRunner degrades greatly compared with the default Paremeterized Junit 4 runner. To see the problem create an empty test that takes a string argument and generate enough data to cause the problem. On my old laptop, 1000 test cases take around 1 minutes versus a few seconds on the regular Junit 4 runner. A faster laptop, might need to test with 2k to 4k test cases. A quick profiling of the problem points towards Utils.stringify method. There is a lot of string concatenation. Using a StringBuilder should help here. Also the method tryFindingOverridenToString is part of the problem. Having an internal cache so the lookp is not done multiple times should alleviate that problem. I have a test case written since I need to fix this problem. Let me know if you would like any help.

    opened by jslopezgithub 6
  • Incorrect method 'description' evaluation (description is null) leading to NPE and build crash in maven

    Incorrect method 'description' evaluation (description is null) leading to NPE and build crash in maven

    in versions 1.1.0 and 1.1.1 the method ParameterisedTestMethodRunner.findChildForParams() may not define the "Description" object, causing the maven build to crash (maven-surefire-plugin + surefire-junit47 provider). Version 1.0.6 does not have this problem (maven build runs without error).

    Here is the error (from jvmRun.dump, the log of the maven itself will be given below, at the end):

    org.apache.maven.surefire.testset.TestSetFailedException: Test mechanism :: null at org.apache.maven.surefire.common.junit4.JUnit4RunListener.rethrowAnyTestMechanismFailures(JUnit4RunListener.java:223) at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.createRequestAndRun(JUnitCoreWrapper.java:138) at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.executeEager(JUnitCoreWrapper.java:107) at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.execute(JUnitCoreWrapper.java:83) at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.execute(JUnitCoreWrapper.java:75) at org.apache.maven.surefire.junitcore.JUnitCoreProvider.invoke(JUnitCoreProvider.java:158) at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:384) at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:345) at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:126) at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:418) Caused by: java.lang.NullPointerException at org.apache.maven.surefire.junitcore.NonConcurrentRunListener.describesNewTestSet(NonConcurrentRunListener.java:124) at org.apache.maven.surefire.junitcore.NonConcurrentRunListener.finishLastTestSetIfNecessary(NonConcurrentRunListener.java:107) at org.apache.maven.surefire.junitcore.NonConcurrentRunListener.testStarted(NonConcurrentRunListener.java:101) at org.junit.runner.notification.SynchronizedRunListener.testStarted(SynchronizedRunListener.java:80) at org.junit.runner.notification.RunNotifier$5.notifyListener(RunNotifier.java:156) at org.junit.runner.notification.RunNotifier$SafeNotifier.run(RunNotifier.java:72) at org.junit.runner.notification.RunNotifier.fireTestStarted(RunNotifier.java:153) at org.apache.maven.surefire.common.junit4.Notifier.fireTestStarted(Notifier.java:100) at org.junit.internal.runners.model.EachTestNotifier.fireTestStarted(EachTestNotifier.java:42) at junitparams.internal.ParameterisedTestMethodRunner.runMethodInvoker(ParameterisedTestMethodRunner.java:45) at junitparams.internal.ParameterisedTestMethodRunner.runTestMethod(ParameterisedTestMethodRunner.java:40) at junitparams.internal.ParameterisedTestClassRunner.runParameterisedTest(ParameterisedTestClassRunner.java:146) at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:446) at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:393) at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329) at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293) at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306) at org.junit.runners.ParentRunner.run(ParentRunner.java:413) at org.junit.runners.Suite.runChild(Suite.java:128) at org.junit.runners.Suite.runChild(Suite.java:27) at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329) at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293) at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306) at org.junit.runners.ParentRunner.run(ParentRunner.java:413) at org.apache.maven.surefire.junitcore.JUnitCore.run(JUnitCore.java:55) at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.createRequestAndRun(JUnitCoreWrapper.java:137) ... 8 more

    Platform: Java 8 Build tool: maven 3.8.3 (version is not important) Framework: spring-boot 2.5.12, junit-vintage-engine 5.7.2, JUnit 4.13.2 JUnitParams: 1.1.1 maven-surefire-plugin is configured like this (maven, pom.xml):

        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>3.0.0-M7</version>
                    <dependencies>
                        <dependency>
                            <groupId>org.apache.maven.surefire</groupId>
                            <artifactId>surefire-junit47</artifactId>
                            <version>3.0.0-M7</version>
                        </dependency>
                    </dependencies>
                </plugin>
            </plugins>
        </pluginManagement>
    

    My experiment showed that this happens if in a parameterized test a variable (object) is passed in more than one set of arguments, and at the same time it is mutated inside the test. In this case, Description will become null.

    The simplest test to confirm the problem. Command line:

    mvn test >mvn.log

    import junitparams.JUnitParamsRunner;
    import junitparams.Parameters;
    import org.junit.Test;
    import org.junit.runner.RunWith;
    import static org.junit.Assert.assertTrue;
    
    @RunWith(JUnitParamsRunner.class)
    public class JUnitParamsTest {
        static class Container {
            String value = "_1"; // initial
    
            @Override
            // having toString() is necessary! Without toString() "description" != null and the build passes without errors -)
            public String toString() {
                return "Container{" + "value='" + value + '\'' + '}';
            }
        }
    
        private Object[] params() {
            Container container = new Container();
    
            return new Object[]{
                    new Object[]{container},
                    new Object[]{container}
            };
        }
    
        @Test
        @Parameters(method = "params")
        public void test1(Container container) {
            container.value = container.value + container.value;
            assertTrue(true);
        }
    }
    

    In the log file, all tests are executed without errors, but the build itself crashes. As a result, it is even impossible to understand in which test (class) an error occurred.

    [INFO] [INFO] Results: [INFO] [WARNING] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0 [INFO] [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 04:50 min [INFO] Finished at: 2022-06-14T10:47:21+03:00 [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M7:test (default-test) on project cnc-app: [ERROR] [ERROR] Please refer to C:\Projects\CNC\cnc_core\core\cnc-app\target\surefire-reports for the individual test results. [ERROR] Please refer to dump files (if any exist) [date].dump, [date]-jvmRun[N].dump and [date].dumpstream. [ERROR] There was an error in the forked process [ERROR] Test mechanism :: null [ERROR] org.apache.maven.surefire.booter.SurefireBooterForkException: There was an error in the forked process [ERROR] Test mechanism :: null [ERROR] at org.apache.maven.plugin.surefire.booterclient.ForkStarter.fork(ForkStarter.java:701) [ERROR] at org.apache.maven.plugin.surefire.booterclient.ForkStarter.run(ForkStarter.java:311) [ERROR] at org.apache.maven.plugin.surefire.booterclient.ForkStarter.run(ForkStarter.java:268) [ERROR] at org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeProvider(AbstractSurefireMojo.java:1334) [ERROR] at org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeAfterPreconditionsChecked(AbstractSurefireMojo.java:1167) [ERROR] at org.apache.maven.plugin.surefire.AbstractSurefireMojo.execute(AbstractSurefireMojo.java:931) [ERROR] at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137) [ERROR] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:210) [ERROR] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:156) [ERROR] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:148) [ERROR] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117) [ERROR] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81) [ERROR] at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:56) [ERROR] at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128) [ERROR] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305) [ERROR] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192) [ERROR] at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105) [ERROR] at org.apache.maven.cli.MavenCli.execute(MavenCli.java:972) [ERROR] at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:293) [ERROR] at org.apache.maven.cli.MavenCli.main(MavenCli.java:196) [ERROR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [ERROR] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [ERROR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [ERROR] at java.lang.reflect.Method.invoke(Method.java:498) [ERROR] at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:282) [ERROR] at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:225) [ERROR] at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:406) [ERROR] at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:347)

    opened by vlalykin 0
  • Some tests failed with newer version of junit

    Some tests failed with newer version of junit

    When building junitparams with junit:4.12, the tests passed. But when building junitparams with junit:4.13.1, some tests failed.

    • junit:4.12
    [INFO] Scanning for projects...
    [INFO] 
    [INFO] ---------------------< pl.pragmatists:JUnitParams >---------------------
    [INFO] Building JUnitParams 1.1.1
    [INFO] --------------------------------[ jar ]---------------------------------
    [INFO] 
    [INFO] --- maven-resources-plugin:3.1.0:resources (default-resources) @ JUnitParams ---
    [WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
    [INFO] skip non existing resourceDirectory /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/src/main/resources
    [INFO] 
    [INFO] --- maven-compiler-plugin:3.7.0:compile (default-compile) @ JUnitParams ---
    [INFO] Changes detected - recompiling the module!
    [INFO] Compiling 51 source files to /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/target/classes
    [INFO] /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/src/main/java/junitparams/internal/InvokeParameterisedMethod.java: /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/src/main/java/junitparams/internal/InvokeParameterisedMethod.java uses or overrides a deprecated API.
    [INFO] /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/src/main/java/junitparams/internal/InvokeParameterisedMethod.java: Recompile with -Xlint:deprecation for details.
    [INFO] /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/src/main/java/junitparams/converters/ParamAnnotation.java: Some input files use unchecked or unsafe operations.
    [INFO] /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/src/main/java/junitparams/converters/ParamAnnotation.java: Recompile with -Xlint:unchecked for details.
    [INFO] 
    [INFO] --- maven-resources-plugin:3.1.0:testResources (default-testResources) @ JUnitParams ---
    [WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
    [INFO] Copying 5 resources
    [INFO] 
    [INFO] --- maven-compiler-plugin:3.7.0:testCompile (default-testCompile) @ JUnitParams ---
    [INFO] Changes detected - recompiling the module!
    [INFO] Compiling 45 source files to /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/target/test-classes
    [INFO] /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/src/test/java/junitparams/ParamsConverterTest.java: Some input files use or override a deprecated API.
    [INFO] /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/src/test/java/junitparams/ParamsConverterTest.java: Recompile with -Xlint:deprecation for details.
    [INFO] /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/src/test/java/junitparams/usage/SamplesOfUsageTest.java: Some input files use unchecked or unsafe operations.
    [INFO] /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/src/test/java/junitparams/usage/SamplesOfUsageTest.java: Recompile with -Xlint:unchecked for details.
    [INFO] 
    [INFO] --- maven-surefire-plugin:2.22.0:test (default-test) @ JUnitParams ---
    [INFO] 
    [INFO] -------------------------------------------------------
    [INFO]  T E S T S
    [INFO] -------------------------------------------------------
    [INFO] Running junitparams.OverloadedTestMethodNameTest
    [INFO] Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.067 s - in junitparams.OverloadedTestMethodNameTest
    [INFO] Running junitparams.IgnoringTest
    [WARNING] Tests run: 5, Failures: 0, Errors: 0, Skipped: 3, Time elapsed: 0 s - in junitparams.IgnoringTest
    [INFO] Running junitparams.usage.person_example.PersonTest
    [INFO] Tests run: 12, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 s - in junitparams.usage.person_example.PersonTest
    [INFO] Running junitparams.usage.SamplesOfUsageTest
    [INFO] Tests run: 47, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.026 s - in junitparams.usage.SamplesOfUsageTest
    [INFO] Running junitparams.MethodAnnotationArgumentTest
    [INFO] Tests run: 13, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.005 s - in junitparams.MethodAnnotationArgumentTest
    [INFO] Running junitparams.InstantiatingTestClassOnceTest
    [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 s - in junitparams.InstantiatingTestClassOnceTest
    [INFO] Running junitparams.SubclassTest
    [INFO] Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 s - in junitparams.SubclassTest
    [INFO] Running junitparams.internal.ParameterisedTestClassRunnerTest
    [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 s - in junitparams.internal.ParameterisedTestClassRunnerTest
    [INFO] Running junitparams.internal.UtilsTest
    [INFO] Tests run: 7, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 s - in junitparams.internal.UtilsTest
    [INFO] Running junitparams.internal.parameters.toarray.SimpleIterableResultToArrayTest
    [INFO] Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 s - in junitparams.internal.parameters.toarray.SimpleIterableResultToArrayTest
    [INFO] Running junitparams.internal.TestMethodTest
    [WARNING] Tests run: 15, Failures: 0, Errors: 0, Skipped: 1, Time elapsed: 0.01 s - in junitparams.internal.TestMethodTest
    [INFO] Running junitparams.NullValuesTest
    [INFO] Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.003 s - in junitparams.NullValuesTest
    [INFO] Running junitparams.SampleTestCase
    [INFO] Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 s - in junitparams.SampleTestCase
    [INFO] Running junitparams.ParametersConvertedWithPropertyEditorTest
    [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 s - in junitparams.ParametersConvertedWithPropertyEditorTest
    [INFO] Running junitparams.NamedParametersAnnotationArgumentTest
    [INFO] Tests run: 13, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 s - in junitparams.NamedParametersAnnotationArgumentTest
    [INFO] Running junitparams.rules.TestWatcherDescriptionRuleTest
    [INFO] Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 s - in junitparams.rules.TestWatcherDescriptionRuleTest
    [INFO] Running junitparams.ObjectStringificationTest
    [INFO] Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 s - in junitparams.ObjectStringificationTest
    [INFO] Running junitparams.EnumsAsParamsTest
    [INFO] Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 s - in junitparams.EnumsAsParamsTest
    [INFO] Running junitparams.ParamsInAnnotationTest
    java.lang.IllegalArgumentException: Cannot parse parameters. Did you use ',' or '|' as column separator?  invalidNumber 
    	at junitparams.internal.InvokeParameterisedMethod.castParamsFromString(InvokeParameterisedMethod.java:50)
    	at junitparams.internal.InvokeParameterisedMethod.<init>(InvokeParameterisedMethod.java:35)
    	at junitparams.internal.ParameterisedTestClassRunner.buildMethodInvoker(ParameterisedTestClassRunner.java:125)
    	at junitparams.internal.ParameterisedTestClassRunner.parameterisedMethodInvoker(ParameterisedTestClassRunner.java:118)
    	at junitparams.JUnitParamsRunner.methodInvoker(JUnitParamsRunner.java:482)
    	at org.junit.runners.BlockJUnit4ClassRunner.methodBlock(BlockJUnit4ClassRunner.java:273)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:446)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:393)
    	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
    	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
    	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:365)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:273)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:159)
    	at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:383)
    	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:344)
    	at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:125)
    	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:417)
    Caused by: java.lang.NumberFormatException
    	at java.math.BigDecimal.<init>(BigDecimal.java:497)
    	at java.math.BigDecimal.<init>(BigDecimal.java:383)
    	at java.math.BigDecimal.<init>(BigDecimal.java:809)
    	at junitparams.internal.InvokeParameterisedMethod.castParameterDirectly(InvokeParameterisedMethod.java:210)
    	at junitparams.internal.InvokeParameterisedMethod.castAllParametersToProperTypes(InvokeParameterisedMethod.java:153)
    	at junitparams.internal.InvokeParameterisedMethod.castParamsUsingConverters(InvokeParameterisedMethod.java:107)
    	at junitparams.internal.InvokeParameterisedMethod.castParamsFromString(InvokeParameterisedMethod.java:48)
    	... 21 more
    [INFO] Tests run: 18, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.005 s - in junitparams.ParamsInAnnotationTest
    [INFO] Running junitparams.IteratorMethodTest
    [INFO] Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 s - in junitparams.IteratorMethodTest
    [INFO] Running junitparams.SamplesOfUsageVerificationTest
    [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.009 s - in junitparams.SamplesOfUsageVerificationTest
    [INFO] Running junitparams.AssumptionsTest
    [WARNING] Tests run: 2, Failures: 0, Errors: 0, Skipped: 1, Time elapsed: 0.001 s - in junitparams.AssumptionsTest
    [INFO] Running junitparams.WrongArgumentsNumberTest
    java.lang.IllegalArgumentException: Cannot parse parameters. Did you use ',' or '|' as column separator? one
    	at junitparams.internal.InvokeParameterisedMethod.castParamsFromString(InvokeParameterisedMethod.java:50)
    	at junitparams.internal.InvokeParameterisedMethod.<init>(InvokeParameterisedMethod.java:35)
    	at junitparams.internal.ParameterisedTestClassRunner.buildMethodInvoker(ParameterisedTestClassRunner.java:125)
    	at junitparams.internal.ParameterisedTestClassRunner.parameterisedMethodInvoker(ParameterisedTestClassRunner.java:118)
    	at junitparams.JUnitParamsRunner.methodInvoker(JUnitParamsRunner.java:482)
    	at org.junit.runners.BlockJUnit4ClassRunner.methodBlock(BlockJUnit4ClassRunner.java:273)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:446)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:393)
    	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
    	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
    	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:365)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:273)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:159)
    	at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:383)
    	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:344)
    	at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:125)
    	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:417)
    Caused by: java.lang.ArrayIndexOutOfBoundsException: 1
    	at junitparams.internal.InvokeParameterisedMethod.testMethodParamsHasVarargs(InvokeParameterisedMethod.java:136)
    	at junitparams.internal.InvokeParameterisedMethod.castParamsUsingConverters(InvokeParameterisedMethod.java:101)
    	at junitparams.internal.InvokeParameterisedMethod.castParamsFromString(InvokeParameterisedMethod.java:48)
    	... 21 more
    [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 s - in junitparams.WrongArgumentsNumberTest
    [INFO] Running junitparams.FilterableTest
    [INFO] Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.002 s - in junitparams.FilterableTest
    [INFO] Running junitparams.ParametersForEnumTest
    [INFO] Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.003 s - in junitparams.ParametersForEnumTest
    [INFO] Running junitparams.converters.NullableConverterTest
    [INFO] Tests run: 18, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.011 s - in junitparams.converters.NullableConverterTest
    [INFO] Running junitparams.ClassesAsParamsTest
    java.lang.IllegalArgumentException: Cannot parse parameters. Did you use ',' or '|' as column separator? no.package.NoSuchClass
    	at junitparams.internal.InvokeParameterisedMethod.castParamsFromString(InvokeParameterisedMethod.java:50)
    	at junitparams.internal.InvokeParameterisedMethod.<init>(InvokeParameterisedMethod.java:35)
    	at junitparams.internal.ParameterisedTestClassRunner.buildMethodInvoker(ParameterisedTestClassRunner.java:125)
    	at junitparams.internal.ParameterisedTestClassRunner.parameterisedMethodInvoker(ParameterisedTestClassRunner.java:118)
    	at junitparams.JUnitParamsRunner.methodInvoker(JUnitParamsRunner.java:482)
    	at org.junit.runners.BlockJUnit4ClassRunner.methodBlock(BlockJUnit4ClassRunner.java:273)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:446)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:393)
    	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
    	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
    	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:365)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:273)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:159)
    	at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:383)
    	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:344)
    	at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:125)
    	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:417)
    Caused by: java.lang.IllegalArgumentException: Parameter class (no.package.NoSuchClass) not found
    	at junitparams.internal.InvokeParameterisedMethod.castParameterDirectly(InvokeParameterisedMethod.java:191)
    	at junitparams.internal.InvokeParameterisedMethod.castAllParametersToProperTypes(InvokeParameterisedMethod.java:153)
    	at junitparams.internal.InvokeParameterisedMethod.castParamsUsingConverters(InvokeParameterisedMethod.java:107)
    	at junitparams.internal.InvokeParameterisedMethod.castParamsFromString(InvokeParameterisedMethod.java:48)
    	... 21 more
    Caused by: java.lang.ClassNotFoundException: no.package.NoSuchClass
    	at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
    	at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
    	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352)
    	at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
    	at java.lang.Class.forName0(Native Method)
    	at java.lang.Class.forName(Class.java:264)
    	at junitparams.internal.InvokeParameterisedMethod.castParameterDirectly(InvokeParameterisedMethod.java:189)
    	... 24 more
    [INFO] Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.003 s - in junitparams.ClassesAsParamsTest
    [INFO] Running junitparams.custom.combined.CartesianTest
    [INFO] Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 s - in junitparams.custom.combined.CartesianTest
    [INFO] Running junitparams.custom.combined.CombinedParametersProviderTest
    [INFO] Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 s - in junitparams.custom.combined.CombinedParametersProviderTest
    [INFO] Running junitparams.custom.CustomParametersProviderTest
    [INFO] Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 s - in junitparams.custom.CustomParametersProviderTest
    [INFO] Running junitparams.naming.NamingStrategyIsUsedByRunnerTest
    [INFO] Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.003 s - in junitparams.naming.NamingStrategyIsUsedByRunnerTest
    [INFO] Running junitparams.naming.MacroSubstitutionNamingStrategyTest
    [INFO] Tests run: 13, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.004 s - in junitparams.naming.MacroSubstitutionNamingStrategyTest
    [INFO] Running junitparams.MultipleParameterProvidersTest
    [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 s - in junitparams.MultipleParameterProvidersTest
    [INFO] Running junitparams.CastingParamsTest
    [INFO] Tests run: 10, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.002 s - in junitparams.CastingParamsTest
    [INFO] Running junitparams.ParametersReaderProvidersTest
    [INFO] Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.005 s - in junitparams.ParametersReaderProvidersTest
    [INFO] Running junitparams.BeforeAfterClassTest
    java.lang.Exception: Method fail() should be static
    	at org.junit.runners.model.FrameworkMethod.validatePublicVoid(FrameworkMethod.java:93)
    	at org.junit.runners.model.FrameworkMethod.validatePublicVoidNoArg(FrameworkMethod.java:74)
    	at org.junit.runners.ParentRunner.validatePublicVoidNoArgMethods(ParentRunner.java:155)
    	at junitparams.JUnitParamsRunner.validateLifecycleMethods(JUnitParamsRunner.java:433)
    	at junitparams.JUnitParamsRunner.collectInitializationErrors(JUnitParamsRunner.java:414)
    	at org.junit.runners.ParentRunner.validate(ParentRunner.java:416)
    	at org.junit.runners.ParentRunner.<init>(ParentRunner.java:84)
    	at org.junit.runners.BlockJUnit4ClassRunner.<init>(BlockJUnit4ClassRunner.java:65)
    	at junitparams.JUnitParamsRunner.<init>(JUnitParamsRunner.java:400)
    	at sun.reflect.GeneratedConstructorAccessor6.newInstance(Unknown Source)
    	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
    	at org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:104)
    	at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
    	at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:26)
    	at org.junit.runner.Computer.getRunner(Computer.java:40)
    	at org.junit.runner.Computer$1.runnerForClass(Computer.java:31)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
    	at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:101)
    	at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:87)
    	at org.junit.runners.Suite.<init>(Suite.java:81)
    	at org.junit.runner.Computer.getSuite(Computer.java:28)
    	at org.junit.runner.Request.classes(Request.java:75)
    	at org.junit.runner.JUnitCore.run(JUnitCore.java:105)
    	at org.junit.runner.JUnitCore.runClasses(JUnitCore.java:62)
    	at org.junit.runner.JUnitCore.runClasses(JUnitCore.java:49)
    	at junitparams.BeforeAfterClassTest.shouldProvideHelpfulExceptionMessageWhenLifecycleAnnotationUsedImproperly(BeforeAfterClassTest.java:40)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.lang.reflect.Method.invoke(Method.java:498)
    	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:52)
    	at junitparams.internal.InvokeParameterisedMethod.evaluate(InvokeParameterisedMethod.java:234)
    	at junitparams.internal.ParameterisedTestMethodRunner.runMethodInvoker(ParameterisedTestMethodRunner.java:47)
    	at junitparams.internal.ParameterisedTestMethodRunner.runTestMethod(ParameterisedTestMethodRunner.java:40)
    	at junitparams.internal.ParameterisedTestClassRunner.runParameterisedTest(ParameterisedTestClassRunner.java:146)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:446)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:393)
    	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
    	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
    	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
    	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
    	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:365)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:273)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:159)
    	at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:383)
    	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:344)
    	at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:125)
    	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:417)
    java.lang.Exception: Method fail() should be static
    	at org.junit.runners.model.FrameworkMethod.validatePublicVoid(FrameworkMethod.java:93)
    	at org.junit.runners.model.FrameworkMethod.validatePublicVoidNoArg(FrameworkMethod.java:74)
    	at org.junit.runners.ParentRunner.validatePublicVoidNoArgMethods(ParentRunner.java:155)
    	at junitparams.JUnitParamsRunner.validateLifecycleMethods(JUnitParamsRunner.java:434)
    	at junitparams.JUnitParamsRunner.collectInitializationErrors(JUnitParamsRunner.java:414)
    	at org.junit.runners.ParentRunner.validate(ParentRunner.java:416)
    	at org.junit.runners.ParentRunner.<init>(ParentRunner.java:84)
    	at org.junit.runners.BlockJUnit4ClassRunner.<init>(BlockJUnit4ClassRunner.java:65)
    	at junitparams.JUnitParamsRunner.<init>(JUnitParamsRunner.java:400)
    	at sun.reflect.GeneratedConstructorAccessor6.newInstance(Unknown Source)
    	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
    	at org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:104)
    	at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
    	at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:26)
    	at org.junit.runner.Computer.getRunner(Computer.java:40)
    	at org.junit.runner.Computer$1.runnerForClass(Computer.java:31)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
    	at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:101)
    	at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:87)
    	at org.junit.runners.Suite.<init>(Suite.java:81)
    	at org.junit.runner.Computer.getSuite(Computer.java:28)
    	at org.junit.runner.Request.classes(Request.java:75)
    	at org.junit.runner.JUnitCore.run(JUnitCore.java:105)
    	at org.junit.runner.JUnitCore.runClasses(JUnitCore.java:62)
    	at org.junit.runner.JUnitCore.runClasses(JUnitCore.java:49)
    	at junitparams.BeforeAfterClassTest.shouldProvideHelpfulExceptionMessageWhenLifecycleAnnotationUsedImproperly(BeforeAfterClassTest.java:40)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.lang.reflect.Method.invoke(Method.java:498)
    	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:52)
    	at junitparams.internal.InvokeParameterisedMethod.evaluate(InvokeParameterisedMethod.java:234)
    	at junitparams.internal.ParameterisedTestMethodRunner.runMethodInvoker(ParameterisedTestMethodRunner.java:47)
    	at junitparams.internal.ParameterisedTestMethodRunner.runTestMethod(ParameterisedTestMethodRunner.java:40)
    	at junitparams.internal.ParameterisedTestClassRunner.runParameterisedTest(ParameterisedTestClassRunner.java:146)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:446)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:393)
    	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
    	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
    	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
    	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
    	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:365)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:273)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:159)
    	at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:383)
    	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:344)
    	at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:125)
    	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:417)
    [INFO] Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.004 s - in junitparams.BeforeAfterClassTest
    [INFO] Running junitparams.RulesTest
    org.junit.internal.runners.rules.ValidationError: The @Rule 'testRule' must be public.
    	at org.junit.internal.runners.rules.RuleMemberValidator$MemberMustBePublic.validate(RuleMemberValidator.java:222)
    	at org.junit.internal.runners.rules.RuleMemberValidator.validateMember(RuleMemberValidator.java:99)
    	at org.junit.internal.runners.rules.RuleMemberValidator.validate(RuleMemberValidator.java:93)
    	at junitparams.JUnitParamsRunner.validateRules(JUnitParamsRunner.java:429)
    	at junitparams.JUnitParamsRunner.collectInitializationErrors(JUnitParamsRunner.java:415)
    	at org.junit.runners.ParentRunner.validate(ParentRunner.java:416)
    	at org.junit.runners.ParentRunner.<init>(ParentRunner.java:84)
    	at org.junit.runners.BlockJUnit4ClassRunner.<init>(BlockJUnit4ClassRunner.java:65)
    	at junitparams.JUnitParamsRunner.<init>(JUnitParamsRunner.java:400)
    	at sun.reflect.GeneratedConstructorAccessor6.newInstance(Unknown Source)
    	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
    	at org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:104)
    	at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
    	at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:26)
    	at org.junit.runner.Computer.getRunner(Computer.java:40)
    	at org.junit.runner.Computer$1.runnerForClass(Computer.java:31)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
    	at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:101)
    	at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:87)
    	at org.junit.runners.Suite.<init>(Suite.java:81)
    	at org.junit.runner.Computer.getSuite(Computer.java:28)
    	at org.junit.runner.Request.classes(Request.java:75)
    	at org.junit.runner.JUnitCore.run(JUnitCore.java:105)
    	at org.junit.runner.JUnitCore.runClasses(JUnitCore.java:62)
    	at org.junit.runner.JUnitCore.runClasses(JUnitCore.java:49)
    	at junitparams.RulesTest.shouldProvideHelpfulExceptionMessageWhenRuleIsUsedImproperly(RulesTest.java:44)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.lang.reflect.Method.invoke(Method.java:498)
    	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:52)
    	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
    	at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
    	at org.junit.rules.ExpectedException$ExpectedExceptionStatement.evaluate(ExpectedException.java:239)
    	at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:48)
    	at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55)
    	at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55)
    	at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
    	at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
    	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    	at java.lang.Thread.run(Thread.java:748)
    [INFO] Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.027 s - in junitparams.RulesTest
    [INFO] Running junitparams.ParamsConverterTest
    [INFO] Tests run: 9, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.008 s - in junitparams.ParamsConverterTest
    [INFO] Running junitparams.FileParamsTest
    [INFO] Tests run: 17, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.006 s - in junitparams.FileParamsTest
    [INFO] Running junitparams.ParametersReaderForMethodTest
    [WARNING] Tests run: 9, Failures: 0, Errors: 0, Skipped: 1, Time elapsed: 0.002 s - in junitparams.ParametersReaderForMethodTest
    [INFO] Running junitparams.IterableMethodTest
    [INFO] Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 s - in junitparams.IterableMethodTest
    [INFO] 
    [INFO] Results:
    [INFO] 
    [WARNING] Tests run: 295, Failures: 0, Errors: 0, Skipped: 6
    [INFO] 
    [INFO] 
    [INFO] --- maven-jar-plugin:3.1.0:jar (default-jar) @ JUnitParams ---
    [INFO] Building jar: /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/target/JUnitParams-1.1.1.jar
    [INFO] 
    [INFO] --- maven-source-plugin:3.0.1:jar-no-fork (attach-sources) @ JUnitParams ---
    [INFO] Building jar: /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/target/JUnitParams-1.1.1-sources.jar
    [INFO] 
    [INFO] ---------------------< pl.pragmatists:JUnitParams >---------------------
    [INFO] Building JUnitParams 1.1.1
    [INFO] --------------------------------[ jar ]---------------------------------
    [INFO] 
    [INFO] --- xmvn-mojo:3.0.0:install (default-cli) @ JUnitParams ---
    [INFO] 
    [INFO] --- xmvn-mojo:3.0.0:javadoc (default-cli) @ JUnitParams ---
    [INFO] 
    [INFO] --- xmvn-mojo:3.0.0:builddep (default-cli) @ JUnitParams ---
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time: 13.397 s
    [INFO] Finished at: 2021-08-31T09:25:30Z
    [INFO] ------------------------------------------------------------------------
    
    • junit:4.13.1
    [INFO] Scanning for projects...
    [INFO] 
    [INFO] ---------------------< pl.pragmatists:JUnitParams >---------------------
    [INFO] Building JUnitParams 1.1.1
    [INFO] --------------------------------[ jar ]---------------------------------
    [INFO] 
    [INFO] --- maven-resources-plugin:3.2.0:resources (default-resources) @ JUnitParams ---
    [WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
    [INFO] Using 'null' encoding to copy filtered properties files.
    [INFO] skip non existing resourceDirectory /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/src/main/resources
    [INFO] 
    [INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ JUnitParams ---
    [INFO] Changes detected - recompiling the module!
    [INFO] Compiling 51 source files to /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/target/classes
    [INFO] /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/src/main/java/junitparams/internal/InvokeParameterisedMethod.java: Some input files use or override a deprecated API.
    [INFO] /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/src/main/java/junitparams/internal/InvokeParameterisedMethod.java: Recompile with -Xlint:deprecation for details.
    [INFO] /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/src/main/java/junitparams/converters/ParamAnnotation.java: Some input files use unchecked or unsafe operations.
    [INFO] /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/src/main/java/junitparams/converters/ParamAnnotation.java: Recompile with -Xlint:unchecked for details.
    [INFO] 
    [INFO] --- maven-resources-plugin:3.2.0:testResources (default-testResources) @ JUnitParams ---
    [WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
    [INFO] Using 'null' encoding to copy filtered properties files.
    [INFO] Copying 5 resources
    [INFO] 
    [INFO] --- maven-compiler-plugin:3.8.1:testCompile (default-testCompile) @ JUnitParams ---
    [INFO] Changes detected - recompiling the module!
    [INFO] Compiling 45 source files to /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/target/test-classes
    [INFO] /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/src/test/java/junitparams/ParamsConverterTest.java: Some input files use or override a deprecated API.
    [INFO] /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/src/test/java/junitparams/ParamsConverterTest.java: Recompile with -Xlint:deprecation for details.
    [INFO] /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/src/test/java/junitparams/usage/SamplesOfUsageTest.java: Some input files use unchecked or unsafe operations.
    [INFO] /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/src/test/java/junitparams/usage/SamplesOfUsageTest.java: Recompile with -Xlint:unchecked for details.
    [INFO] 
    [INFO] --- maven-surefire-plugin:3.0.0-M4:test (default-test) @ JUnitParams ---
    [INFO] 
    [INFO] -------------------------------------------------------
    [INFO]  T E S T S
    [INFO] -------------------------------------------------------
    [INFO] Running junitparams.OverloadedTestMethodNameTest
    [INFO] Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.148 s - in junitparams.OverloadedTestMethodNameTest
    [INFO] Running junitparams.IgnoringTest
    [WARNING] Tests run: 5, Failures: 0, Errors: 0, Skipped: 3, Time elapsed: 0.006 s - in junitparams.IgnoringTest
    [INFO] Running junitparams.usage.person_example.PersonTest
    [INFO] Tests run: 12, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.005 s - in junitparams.usage.person_example.PersonTest
    [INFO] Running junitparams.usage.SamplesOfUsageTest
    [INFO] Tests run: 47, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.131 s - in junitparams.usage.SamplesOfUsageTest
    [INFO] Running junitparams.MethodAnnotationArgumentTest
    [INFO] Tests run: 13, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.016 s - in junitparams.MethodAnnotationArgumentTest
    [INFO] Running junitparams.InstantiatingTestClassOnceTest
    [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 s - in junitparams.InstantiatingTestClassOnceTest
    [INFO] Running junitparams.SubclassTest
    [INFO] Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.002 s - in junitparams.SubclassTest
    [INFO] Running junitparams.internal.ParameterisedTestClassRunnerTest
    [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.002 s - in junitparams.internal.ParameterisedTestClassRunnerTest
    [INFO] Running junitparams.internal.UtilsTest
    [INFO] Tests run: 7, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.002 s - in junitparams.internal.UtilsTest
    [INFO] Running junitparams.internal.parameters.toarray.SimpleIterableResultToArrayTest
    [INFO] Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 s - in junitparams.internal.parameters.toarray.SimpleIterableResultToArrayTest
    [INFO] Running junitparams.internal.TestMethodTest
    [WARNING] Tests run: 15, Failures: 0, Errors: 0, Skipped: 1, Time elapsed: 0.014 s - in junitparams.internal.TestMethodTest
    [INFO] Running junitparams.NullValuesTest
    [INFO] Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 s - in junitparams.NullValuesTest
    [INFO] Running junitparams.SampleTestCase
    [INFO] Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 s - in junitparams.SampleTestCase
    [INFO] Running junitparams.ParametersConvertedWithPropertyEditorTest
    [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 s - in junitparams.ParametersConvertedWithPropertyEditorTest
    [INFO] Running junitparams.NamedParametersAnnotationArgumentTest
    [INFO] Tests run: 13, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.004 s - in junitparams.NamedParametersAnnotationArgumentTest
    [INFO] Running junitparams.rules.TestWatcherDescriptionRuleTest
    [INFO] Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.008 s - in junitparams.rules.TestWatcherDescriptionRuleTest
    [INFO] Running junitparams.ObjectStringificationTest
    [INFO] Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.006 s - in junitparams.ObjectStringificationTest
    [INFO] Running junitparams.EnumsAsParamsTest
    [INFO] Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 s - in junitparams.EnumsAsParamsTest
    [INFO] Running junitparams.ParamsInAnnotationTest
    java.lang.IllegalArgumentException: Cannot parse parameters. Did you use ',' or '|' as column separator?  invalidNumber 
    	at junitparams.internal.InvokeParameterisedMethod.castParamsFromString(InvokeParameterisedMethod.java:50)
    	at junitparams.internal.InvokeParameterisedMethod.<init>(InvokeParameterisedMethod.java:35)
    	at junitparams.internal.ParameterisedTestClassRunner.buildMethodInvoker(ParameterisedTestClassRunner.java:125)
    	at junitparams.internal.ParameterisedTestClassRunner.parameterisedMethodInvoker(ParameterisedTestClassRunner.java:118)
    	at junitparams.JUnitParamsRunner.methodInvoker(JUnitParamsRunner.java:482)
    	at org.junit.runners.BlockJUnit4ClassRunner.methodBlock(BlockJUnit4ClassRunner.java:316)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:446)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:393)
    	at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
    	at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
    	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    	at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:365)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:273)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:159)
    	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:377)
    	at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:138)
    	at org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:465)
    	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:451)
    Caused by: java.lang.NumberFormatException: Character i is neither a decimal digit number, decimal point, nor "e" notation exponential mark.
    	at java.base/java.math.BigDecimal.<init>(BigDecimal.java:518)
    	at java.base/java.math.BigDecimal.<init>(BigDecimal.java:401)
    	at java.base/java.math.BigDecimal.<init>(BigDecimal.java:834)
    	at junitparams.internal.InvokeParameterisedMethod.castParameterDirectly(InvokeParameterisedMethod.java:210)
    	at junitparams.internal.InvokeParameterisedMethod.castAllParametersToProperTypes(InvokeParameterisedMethod.java:153)
    	at junitparams.internal.InvokeParameterisedMethod.castParamsUsingConverters(InvokeParameterisedMethod.java:107)
    	at junitparams.internal.InvokeParameterisedMethod.castParamsFromString(InvokeParameterisedMethod.java:48)
    	... 22 more
    [INFO] Tests run: 18, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.009 s - in junitparams.ParamsInAnnotationTest
    [INFO] Running junitparams.IteratorMethodTest
    [INFO] Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 s - in junitparams.IteratorMethodTest
    [INFO] Running junitparams.SamplesOfUsageVerificationTest
    [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.006 s - in junitparams.SamplesOfUsageVerificationTest
    [INFO] Running junitparams.AssumptionsTest
    [WARNING] Tests run: 2, Failures: 0, Errors: 0, Skipped: 1, Time elapsed: 0.001 s - in junitparams.AssumptionsTest
    [INFO] Running junitparams.WrongArgumentsNumberTest
    java.lang.IllegalArgumentException: Cannot parse parameters. Did you use ',' or '|' as column separator? one
    	at junitparams.internal.InvokeParameterisedMethod.castParamsFromString(InvokeParameterisedMethod.java:50)
    	at junitparams.internal.InvokeParameterisedMethod.<init>(InvokeParameterisedMethod.java:35)
    	at junitparams.internal.ParameterisedTestClassRunner.buildMethodInvoker(ParameterisedTestClassRunner.java:125)
    	at junitparams.internal.ParameterisedTestClassRunner.parameterisedMethodInvoker(ParameterisedTestClassRunner.java:118)
    	at junitparams.JUnitParamsRunner.methodInvoker(JUnitParamsRunner.java:482)
    	at org.junit.runners.BlockJUnit4ClassRunner.methodBlock(BlockJUnit4ClassRunner.java:316)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:446)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:393)
    	at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
    	at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
    	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    	at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:365)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:273)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:159)
    	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:377)
    	at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:138)
    	at org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:465)
    	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:451)
    Caused by: java.lang.ArrayIndexOutOfBoundsException: Index 1 out of bounds for length 1
    	at junitparams.internal.InvokeParameterisedMethod.testMethodParamsHasVarargs(InvokeParameterisedMethod.java:136)
    	at junitparams.internal.InvokeParameterisedMethod.castParamsUsingConverters(InvokeParameterisedMethod.java:101)
    	at junitparams.internal.InvokeParameterisedMethod.castParamsFromString(InvokeParameterisedMethod.java:48)
    	... 22 more
    [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.002 s - in junitparams.WrongArgumentsNumberTest
    [INFO] Running junitparams.FilterableTest
    [ERROR] Tests run: 5, Failures: 2, Errors: 0, Skipped: 0, Time elapsed: 0.003 s <<< FAILURE! - in junitparams.FilterableTest
    [ERROR] junitparams.FilterableTest.shouldReturnParametrizedDescriptionsForParametrizedTestCase  Time elapsed: 0.001 s  <<< FAILURE!
    java.lang.AssertionError: 
    Expected size: 1 but was: 2 in:
    [secondTestMethod, firstTestMethod(junitparams.SampleTestCase)]
    	at junitparams.FilterableTest.shouldReturnParametrizedDescriptionsForParametrizedTestCase(FilterableTest.java:57)
    [ERROR] junitparams.FilterableTest.shouldReturnOneDescriptionForSimpleTestCase  Time elapsed: 0 s  <<< FAILURE!
    java.lang.AssertionError: 
    Expected size: 1 but was: 2 in:
    [secondTestMethod, firstTestMethod(junitparams.SampleTestCase)]
    	at junitparams.FilterableTest.shouldReturnOneDescriptionForSimpleTestCase(FilterableTest.java:47)
    [INFO] Running junitparams.ParametersForEnumTest
    [INFO] Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.002 s - in junitparams.ParametersForEnumTest
    [INFO] Running junitparams.converters.NullableConverterTest
    [INFO] Tests run: 18, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.038 s - in junitparams.converters.NullableConverterTest
    [INFO] Running junitparams.ClassesAsParamsTest
    java.lang.IllegalArgumentException: Cannot parse parameters. Did you use ',' or '|' as column separator? no.package.NoSuchClass
    	at junitparams.internal.InvokeParameterisedMethod.castParamsFromString(InvokeParameterisedMethod.java:50)
    	at junitparams.internal.InvokeParameterisedMethod.<init>(InvokeParameterisedMethod.java:35)
    	at junitparams.internal.ParameterisedTestClassRunner.buildMethodInvoker(ParameterisedTestClassRunner.java:125)
    	at junitparams.internal.ParameterisedTestClassRunner.parameterisedMethodInvoker(ParameterisedTestClassRunner.java:118)
    	at junitparams.JUnitParamsRunner.methodInvoker(JUnitParamsRunner.java:482)
    	at org.junit.runners.BlockJUnit4ClassRunner.methodBlock(BlockJUnit4ClassRunner.java:316)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:446)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:393)
    	at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
    	at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
    	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    	at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:365)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:273)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:159)
    	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:377)
    	at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:138)
    	at org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:465)
    	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:451)
    Caused by: java.lang.IllegalArgumentException: Parameter class (no.package.NoSuchClass) not found
    	at junitparams.internal.InvokeParameterisedMethod.castParameterDirectly(InvokeParameterisedMethod.java:191)
    	at junitparams.internal.InvokeParameterisedMethod.castAllParametersToProperTypes(InvokeParameterisedMethod.java:153)
    	at junitparams.internal.InvokeParameterisedMethod.castParamsUsingConverters(InvokeParameterisedMethod.java:107)
    	at junitparams.internal.InvokeParameterisedMethod.castParamsFromString(InvokeParameterisedMethod.java:48)
    	... 22 more
    Caused by: java.lang.ClassNotFoundException: no.package.NoSuchClass
    	at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
    	at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
    	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
    	at java.base/java.lang.Class.forName0(Native Method)
    	at java.base/java.lang.Class.forName(Class.java:315)
    	at junitparams.internal.InvokeParameterisedMethod.castParameterDirectly(InvokeParameterisedMethod.java:189)
    	... 25 more
    [INFO] Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.003 s - in junitparams.ClassesAsParamsTest
    [INFO] Running junitparams.custom.combined.CartesianTest
    [INFO] Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 s - in junitparams.custom.combined.CartesianTest
    [INFO] Running junitparams.custom.combined.CombinedParametersProviderTest
    [INFO] Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 s - in junitparams.custom.combined.CombinedParametersProviderTest
    [INFO] Running junitparams.custom.CustomParametersProviderTest
    [INFO] Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.003 s - in junitparams.custom.CustomParametersProviderTest
    [INFO] Running junitparams.naming.NamingStrategyIsUsedByRunnerTest
    [INFO] Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.005 s - in junitparams.naming.NamingStrategyIsUsedByRunnerTest
    [INFO] Running junitparams.naming.MacroSubstitutionNamingStrategyTest
    [INFO] Tests run: 13, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.013 s - in junitparams.naming.MacroSubstitutionNamingStrategyTest
    [INFO] Running junitparams.MultipleParameterProvidersTest
    [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.008 s - in junitparams.MultipleParameterProvidersTest
    [INFO] Running junitparams.CastingParamsTest
    [INFO] Tests run: 10, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.06 s - in junitparams.CastingParamsTest
    [INFO] Running junitparams.ParametersReaderProvidersTest
    [INFO] Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.016 s - in junitparams.ParametersReaderProvidersTest
    [INFO] Running junitparams.BeforeAfterClassTest
    java.lang.Exception: Method fail() should be static
    	at org.junit.runners.model.FrameworkMethod.validatePublicVoid(FrameworkMethod.java:102)
    	at org.junit.runners.model.FrameworkMethod.validatePublicVoidNoArg(FrameworkMethod.java:83)
    	at org.junit.runners.ParentRunner.validatePublicVoidNoArgMethods(ParentRunner.java:178)
    	at junitparams.JUnitParamsRunner.validateLifecycleMethods(JUnitParamsRunner.java:433)
    	at junitparams.JUnitParamsRunner.collectInitializationErrors(JUnitParamsRunner.java:414)
    	at org.junit.runners.ParentRunner.validate(ParentRunner.java:523)
    	at org.junit.runners.ParentRunner.<init>(ParentRunner.java:92)
    	at org.junit.runners.BlockJUnit4ClassRunner.<init>(BlockJUnit4ClassRunner.java:74)
    	at junitparams.JUnitParamsRunner.<init>(JUnitParamsRunner.java:400)
    	at jdk.internal.reflect.GeneratedConstructorAccessor6.newInstance(Unknown Source)
    	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
    	at org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:104)
    	at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
    	at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:37)
    	at org.junit.runner.Computer.getRunner(Computer.java:50)
    	at org.junit.runner.Computer$1.runnerForClass(Computer.java:31)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
    	at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:125)
    	at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:111)
    	at org.junit.runners.Suite.<init>(Suite.java:81)
    	at org.junit.runner.Computer$2.<init>(Computer.java:33)
    	at org.junit.runner.Computer.getSuite(Computer.java:28)
    	at org.junit.runner.Request.classes(Request.java:77)
    	at org.junit.runner.JUnitCore.run(JUnitCore.java:105)
    	at org.junit.runner.JUnitCore.runClasses(JUnitCore.java:62)
    	at org.junit.runner.JUnitCore.runClasses(JUnitCore.java:49)
    	at junitparams.BeforeAfterClassTest.shouldProvideHelpfulExceptionMessageWhenLifecycleAnnotationUsedImproperly(BeforeAfterClassTest.java:40)
    	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:61)
    	at junitparams.internal.InvokeParameterisedMethod.evaluate(InvokeParameterisedMethod.java:234)
    	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    	at junitparams.internal.ParameterisedTestMethodRunner.runMethodInvoker(ParameterisedTestMethodRunner.java:47)
    	at junitparams.internal.ParameterisedTestMethodRunner.runTestMethod(ParameterisedTestMethodRunner.java:40)
    	at junitparams.internal.ParameterisedTestClassRunner.runParameterisedTest(ParameterisedTestClassRunner.java:146)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:446)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:393)
    	at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
    	at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
    	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
    	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
    	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    	at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:365)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:273)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:159)
    	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:377)
    	at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:138)
    	at org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:465)
    	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:451)
    java.lang.Exception: Method fail() should be static
    	at org.junit.runners.model.FrameworkMethod.validatePublicVoid(FrameworkMethod.java:102)
    	at org.junit.runners.model.FrameworkMethod.validatePublicVoidNoArg(FrameworkMethod.java:83)
    	at org.junit.runners.ParentRunner.validatePublicVoidNoArgMethods(ParentRunner.java:178)
    	at junitparams.JUnitParamsRunner.validateLifecycleMethods(JUnitParamsRunner.java:434)
    	at junitparams.JUnitParamsRunner.collectInitializationErrors(JUnitParamsRunner.java:414)
    	at org.junit.runners.ParentRunner.validate(ParentRunner.java:523)
    	at org.junit.runners.ParentRunner.<init>(ParentRunner.java:92)
    	at org.junit.runners.BlockJUnit4ClassRunner.<init>(BlockJUnit4ClassRunner.java:74)
    	at junitparams.JUnitParamsRunner.<init>(JUnitParamsRunner.java:400)
    	at jdk.internal.reflect.GeneratedConstructorAccessor6.newInstance(Unknown Source)
    	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
    	at org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:104)
    	at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
    	at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:37)
    	at org.junit.runner.Computer.getRunner(Computer.java:50)
    	at org.junit.runner.Computer$1.runnerForClass(Computer.java:31)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
    	at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:125)
    	at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:111)
    	at org.junit.runners.Suite.<init>(Suite.java:81)
    	at org.junit.runner.Computer$2.<init>(Computer.java:33)
    	at org.junit.runner.Computer.getSuite(Computer.java:28)
    	at org.junit.runner.Request.classes(Request.java:77)
    	at org.junit.runner.JUnitCore.run(JUnitCore.java:105)
    	at org.junit.runner.JUnitCore.runClasses(JUnitCore.java:62)
    	at org.junit.runner.JUnitCore.runClasses(JUnitCore.java:49)
    	at junitparams.BeforeAfterClassTest.shouldProvideHelpfulExceptionMessageWhenLifecycleAnnotationUsedImproperly(BeforeAfterClassTest.java:40)
    	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:61)
    	at junitparams.internal.InvokeParameterisedMethod.evaluate(InvokeParameterisedMethod.java:234)
    	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    	at junitparams.internal.ParameterisedTestMethodRunner.runMethodInvoker(ParameterisedTestMethodRunner.java:47)
    	at junitparams.internal.ParameterisedTestMethodRunner.runTestMethod(ParameterisedTestMethodRunner.java:40)
    	at junitparams.internal.ParameterisedTestClassRunner.runParameterisedTest(ParameterisedTestClassRunner.java:146)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:446)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:393)
    	at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
    	at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
    	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
    	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
    	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    	at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:365)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:273)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:159)
    	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:377)
    	at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:138)
    	at org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:465)
    	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:451)
    [ERROR] Tests run: 3, Failures: 2, Errors: 0, Skipped: 0, Time elapsed: 0.037 s <<< FAILURE! - in junitparams.BeforeAfterClassTest
    [ERROR] junitparams.BeforeAfterClassTest.shouldProvideHelpfulExceptionMessageWhenLifecycleAnnotationUsedImproperly(junitparams.BeforeAfterClassTest$NonStaticBeforeTest) [0]  Time elapsed: 0.021 s  <<< FAILURE!
    org.junit.ComparisonFailure: 
    Expecting message to be:
      "Method fail() should be static"
    but was:
      "Invalid test class 'junitparams.BeforeAfterClassTest$NonStaticBeforeTest':
      1. Method fail() should be static"
    Throwable that failed the check:
    org.junit.runners.model.InvalidTestClassError: Invalid test class 'junitparams.BeforeAfterClassTest$NonStaticBeforeTest':
      1. Method fail() should be static
    	at org.junit.runners.ParentRunner.validate(ParentRunner.java:525)
    	at org.junit.runners.ParentRunner.<init>(ParentRunner.java:92)
    	at org.junit.runners.BlockJUnit4ClassRunner.<init>(BlockJUnit4ClassRunner.java:74)
    	at junitparams.JUnitParamsRunner.<init>(JUnitParamsRunner.java:400)
    	at jdk.internal.reflect.GeneratedConstructorAccessor6.newInstance(Unknown Source)
    	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
    	at org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:104)
    	at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
    	at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:37)
    	at org.junit.runner.Computer.getRunner(Computer.java:50)
    	at org.junit.runner.Computer$1.runnerForClass(Computer.java:31)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
    	at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:125)
    	at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:111)
    	at org.junit.runners.Suite.<init>(Suite.java:81)
    	at org.junit.runner.Computer$2.<init>(Computer.java:33)
    	at org.junit.runner.Computer.getSuite(Computer.java:28)
    	at org.junit.runner.Request.classes(Request.java:77)
    	at org.junit.runner.JUnitCore.run(JUnitCore.java:105)
    	at org.junit.runner.JUnitCore.runClasses(JUnitCore.java:62)
    	at org.junit.runner.JUnitCore.runClasses(JUnitCore.java:49)
    	at junitparams.BeforeAfterClassTest.shouldProvideHelpfulExceptionMessageWhenLifecycleAnnotationUsedImproperly(BeforeAfterClassTest.java:40)
    	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:61)
    	at junitparams.internal.InvokeParameterisedMethod.evaluate(InvokeParameterisedMethod.java:234)
    	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    	at junitparams.internal.ParameterisedTestMethodRunner.runMethodInvoker(ParameterisedTestMethodRunner.java:47)
    	at junitparams.internal.ParameterisedTestMethodRunner.runTestMethod(ParameterisedTestMethodRunner.java:40)
    	at junitparams.internal.ParameterisedTestClassRunner.runParameterisedTest(ParameterisedTestClassRunner.java:146)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:446)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:393)
    	at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
    	at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
    	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
    	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
    	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    	at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:365)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:273)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:159)
    	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:377)
    	at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:138)
    	at org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:465)
    	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:451)
     expected:<"[]Method fail() should...> but was:<"[Invalid test class 'junitparams.BeforeAfterClassTest$NonStaticBeforeTest':
      1. ]Method fail() should...>
    	at junitparams.BeforeAfterClassTest.shouldProvideHelpfulExceptionMessageWhenLifecycleAnnotationUsedImproperly(BeforeAfterClassTest.java:44)
    [ERROR] junitparams.BeforeAfterClassTest.shouldProvideHelpfulExceptionMessageWhenLifecycleAnnotationUsedImproperly(junitparams.BeforeAfterClassTest$NonStaticAfterTest) [1]  Time elapsed: 0.016 s  <<< FAILURE!
    org.junit.ComparisonFailure: 
    Expecting message to be:
      "Method fail() should be static"
    but was:
      "Invalid test class 'junitparams.BeforeAfterClassTest$NonStaticAfterTest':
      1. Method fail() should be static"
    Throwable that failed the check:
    org.junit.runners.model.InvalidTestClassError: Invalid test class 'junitparams.BeforeAfterClassTest$NonStaticAfterTest':
      1. Method fail() should be static
    	at org.junit.runners.ParentRunner.validate(ParentRunner.java:525)
    	at org.junit.runners.ParentRunner.<init>(ParentRunner.java:92)
    	at org.junit.runners.BlockJUnit4ClassRunner.<init>(BlockJUnit4ClassRunner.java:74)
    	at junitparams.JUnitParamsRunner.<init>(JUnitParamsRunner.java:400)
    	at jdk.internal.reflect.GeneratedConstructorAccessor6.newInstance(Unknown Source)
    	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
    	at org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:104)
    	at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
    	at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:37)
    	at org.junit.runner.Computer.getRunner(Computer.java:50)
    	at org.junit.runner.Computer$1.runnerForClass(Computer.java:31)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
    	at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:125)
    	at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:111)
    	at org.junit.runners.Suite.<init>(Suite.java:81)
    	at org.junit.runner.Computer$2.<init>(Computer.java:33)
    	at org.junit.runner.Computer.getSuite(Computer.java:28)
    	at org.junit.runner.Request.classes(Request.java:77)
    	at org.junit.runner.JUnitCore.run(JUnitCore.java:105)
    	at org.junit.runner.JUnitCore.runClasses(JUnitCore.java:62)
    	at org.junit.runner.JUnitCore.runClasses(JUnitCore.java:49)
    	at junitparams.BeforeAfterClassTest.shouldProvideHelpfulExceptionMessageWhenLifecycleAnnotationUsedImproperly(BeforeAfterClassTest.java:40)
    	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:61)
    	at junitparams.internal.InvokeParameterisedMethod.evaluate(InvokeParameterisedMethod.java:234)
    	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    	at junitparams.internal.ParameterisedTestMethodRunner.runMethodInvoker(ParameterisedTestMethodRunner.java:47)
    	at junitparams.internal.ParameterisedTestMethodRunner.runTestMethod(ParameterisedTestMethodRunner.java:40)
    	at junitparams.internal.ParameterisedTestClassRunner.runParameterisedTest(ParameterisedTestClassRunner.java:146)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:446)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:393)
    	at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
    	at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
    	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
    	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
    	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    	at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:365)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:273)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:159)
    	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:377)
    	at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:138)
    	at org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:465)
    	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:451)
     expected:<"[]Method fail() should...> but was:<"[Invalid test class 'junitparams.BeforeAfterClassTest$NonStaticAfterTest':
      1. ]Method fail() should...>
    	at junitparams.BeforeAfterClassTest.shouldProvideHelpfulExceptionMessageWhenLifecycleAnnotationUsedImproperly(BeforeAfterClassTest.java:44)
    [INFO] Running junitparams.RulesTest
    org.junit.internal.runners.rules.ValidationError: The @Rule 'testRule' must be public.
    	at org.junit.internal.runners.rules.RuleMemberValidator$MemberMustBePublic.validate(RuleMemberValidator.java:222)
    	at org.junit.internal.runners.rules.RuleMemberValidator.validateMember(RuleMemberValidator.java:99)
    	at org.junit.internal.runners.rules.RuleMemberValidator.validate(RuleMemberValidator.java:93)
    	at junitparams.JUnitParamsRunner.validateRules(JUnitParamsRunner.java:429)
    	at junitparams.JUnitParamsRunner.collectInitializationErrors(JUnitParamsRunner.java:415)
    	at org.junit.runners.ParentRunner.validate(ParentRunner.java:523)
    	at org.junit.runners.ParentRunner.<init>(ParentRunner.java:92)
    	at org.junit.runners.BlockJUnit4ClassRunner.<init>(BlockJUnit4ClassRunner.java:74)
    	at junitparams.JUnitParamsRunner.<init>(JUnitParamsRunner.java:400)
    	at jdk.internal.reflect.GeneratedConstructorAccessor6.newInstance(Unknown Source)
    	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
    	at org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:104)
    	at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
    	at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:37)
    	at org.junit.runner.Computer.getRunner(Computer.java:50)
    	at org.junit.runner.Computer$1.runnerForClass(Computer.java:31)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
    	at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:125)
    	at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:111)
    	at org.junit.runners.Suite.<init>(Suite.java:81)
    	at org.junit.runner.Computer$2.<init>(Computer.java:33)
    	at org.junit.runner.Computer.getSuite(Computer.java:28)
    	at org.junit.runner.Request.classes(Request.java:77)
    	at org.junit.runner.JUnitCore.run(JUnitCore.java:105)
    	at org.junit.runner.JUnitCore.runClasses(JUnitCore.java:62)
    	at org.junit.runner.JUnitCore.runClasses(JUnitCore.java:49)
    	at junitparams.RulesTest.shouldProvideHelpfulExceptionMessageWhenRuleIsUsedImproperly(RulesTest.java:44)
    	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:61)
    	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
    	at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
    	at org.junit.rules.ExpectedException$ExpectedExceptionStatement.evaluate(ExpectedException.java:258)
    	at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:54)
    	at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:61)
    	at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:61)
    	at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:288)
    	at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:282)
    	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    	at java.base/java.lang.Thread.run(Thread.java:829)
    [ERROR] Tests run: 2, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0.031 s <<< FAILURE! - in junitparams.RulesTest
    [ERROR] junitparams.RulesTest.shouldProvideHelpfulExceptionMessageWhenRuleIsUsedImproperly  Time elapsed: 0.01 s  <<< FAILURE!
    org.junit.ComparisonFailure: 
    Expecting message to be:
      "The @Rule 'testRule' must be public."
    but was:
      "Invalid test class 'junitparams.RulesTest$ProtectedRuleTest':
      1. The @Rule 'testRule' must be public."
    Throwable that failed the check:
    org.junit.runners.model.InvalidTestClassError: Invalid test class 'junitparams.RulesTest$ProtectedRuleTest':
      1. The @Rule 'testRule' must be public.
    	at org.junit.runners.ParentRunner.validate(ParentRunner.java:525)
    	at org.junit.runners.ParentRunner.<init>(ParentRunner.java:92)
    	at org.junit.runners.BlockJUnit4ClassRunner.<init>(BlockJUnit4ClassRunner.java:74)
    	at junitparams.JUnitParamsRunner.<init>(JUnitParamsRunner.java:400)
    	at jdk.internal.reflect.GeneratedConstructorAccessor6.newInstance(Unknown Source)
    	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
    	at org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:104)
    	at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
    	at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:37)
    	at org.junit.runner.Computer.getRunner(Computer.java:50)
    	at org.junit.runner.Computer$1.runnerForClass(Computer.java:31)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
    	at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:125)
    	at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:111)
    	at org.junit.runners.Suite.<init>(Suite.java:81)
    	at org.junit.runner.Computer$2.<init>(Computer.java:33)
    	at org.junit.runner.Computer.getSuite(Computer.java:28)
    	at org.junit.runner.Request.classes(Request.java:77)
    	at org.junit.runner.JUnitCore.run(JUnitCore.java:105)
    	at org.junit.runner.JUnitCore.runClasses(JUnitCore.java:62)
    	at org.junit.runner.JUnitCore.runClasses(JUnitCore.java:49)
    	at junitparams.RulesTest.shouldProvideHelpfulExceptionMessageWhenRuleIsUsedImproperly(RulesTest.java:44)
    	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:61)
    	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
    	at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
    	at org.junit.rules.ExpectedException$ExpectedExceptionStatement.evaluate(ExpectedException.java:258)
    	at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:54)
    	at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:61)
    	at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:61)
    	at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:288)
    	at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:282)
    	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    	at java.base/java.lang.Thread.run(Thread.java:829)
     expected:<"[]The @Rule 'testRule'...> but was:<"[Invalid test class 'junitparams.RulesTest$ProtectedRuleTest':
      1. ]The @Rule 'testRule'...>
    	at junitparams.RulesTest.shouldProvideHelpfulExceptionMessageWhenRuleIsUsedImproperly(RulesTest.java:48)
    [INFO] Running junitparams.ParamsConverterTest
    [INFO] Tests run: 9, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.012 s - in junitparams.ParamsConverterTest
    [INFO] Running junitparams.FileParamsTest
    [INFO] Tests run: 17, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.021 s - in junitparams.FileParamsTest
    [INFO] Running junitparams.ParametersReaderForMethodTest
    [WARNING] Tests run: 9, Failures: 0, Errors: 0, Skipped: 1, Time elapsed: 0.001 s - in junitparams.ParametersReaderForMethodTest
    [INFO] Running junitparams.IterableMethodTest
    [INFO] Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.003 s - in junitparams.IterableMethodTest
    [INFO] 
    [INFO] Results:
    [INFO] 
    [ERROR] Failures: 
    [ERROR]   BeforeAfterClassTest.shouldProvideHelpfulExceptionMessageWhenLifecycleAnnotationUsedImproperly:44 
    Expecting message to be:
      "Method fail() should be static"
    but was:
      "Invalid test class 'junitparams.BeforeAfterClassTest$NonStaticAfterTest':
      1. Method fail() should be static"
    Throwable that failed the check:
    org.junit.runners.model.InvalidTestClassError: Invalid test class 'junitparams.BeforeAfterClassTest$NonStaticAfterTest':
      1. Method fail() should be static
    	at org.junit.runners.ParentRunner.validate(ParentRunner.java:525)
    	at org.junit.runners.ParentRunner.<init>(ParentRunner.java:92)
    	at org.junit.runners.BlockJUnit4ClassRunner.<init>(BlockJUnit4ClassRunner.java:74)
    	at junitparams.JUnitParamsRunner.<init>(JUnitParamsRunner.java:400)
    	at jdk.internal.reflect.GeneratedConstructorAccessor6.newInstance(Unknown Source)
    	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
    	at org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:104)
    	at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
    	at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:37)
    	at org.junit.runner.Computer.getRunner(Computer.java:50)
    	at org.junit.runner.Computer$1.runnerForClass(Computer.java:31)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
    	at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:125)
    	at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:111)
    	at org.junit.runners.Suite.<init>(Suite.java:81)
    	at org.junit.runner.Computer$2.<init>(Computer.java:33)
    	at org.junit.runner.Computer.getSuite(Computer.java:28)
    	at org.junit.runner.Request.classes(Request.java:77)
    	at org.junit.runner.JUnitCore.run(JUnitCore.java:105)
    	at org.junit.runner.JUnitCore.runClasses(JUnitCore.java:62)
    	at org.junit.runner.JUnitCore.runClasses(JUnitCore.java:49)
    	at junitparams.BeforeAfterClassTest.shouldProvideHelpfulExceptionMessageWhenLifecycleAnnotationUsedImproperly(BeforeAfterClassTest.java:40)
    	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:61)
    	at junitparams.internal.InvokeParameterisedMethod.evaluate(InvokeParameterisedMethod.java:234)
    	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    	at junitparams.internal.ParameterisedTestMethodRunner.runMethodInvoker(ParameterisedTestMethodRunner.java:47)
    	at junitparams.internal.ParameterisedTestMethodRunner.runTestMethod(ParameterisedTestMethodRunner.java:40)
    	at junitparams.internal.ParameterisedTestClassRunner.runParameterisedTest(ParameterisedTestClassRunner.java:146)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:446)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:393)
    	at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
    	at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
    	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
    	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
    	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    	at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:365)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:273)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:159)
    	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:377)
    	at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:138)
    	at org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:465)
    	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:451)
     expected:<"[]Method fail() should...> but was:<"[Invalid test class 'junitparams.BeforeAfterClassTest$NonStaticAfterTest':
      1. ]Method fail() should...>
    [ERROR]   BeforeAfterClassTest.shouldProvideHelpfulExceptionMessageWhenLifecycleAnnotationUsedImproperly:44 
    Expecting message to be:
      "Method fail() should be static"
    but was:
      "Invalid test class 'junitparams.BeforeAfterClassTest$NonStaticBeforeTest':
      1. Method fail() should be static"
    Throwable that failed the check:
    org.junit.runners.model.InvalidTestClassError: Invalid test class 'junitparams.BeforeAfterClassTest$NonStaticBeforeTest':
      1. Method fail() should be static
    	at org.junit.runners.ParentRunner.validate(ParentRunner.java:525)
    	at org.junit.runners.ParentRunner.<init>(ParentRunner.java:92)
    	at org.junit.runners.BlockJUnit4ClassRunner.<init>(BlockJUnit4ClassRunner.java:74)
    	at junitparams.JUnitParamsRunner.<init>(JUnitParamsRunner.java:400)
    	at jdk.internal.reflect.GeneratedConstructorAccessor6.newInstance(Unknown Source)
    	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
    	at org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:104)
    	at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
    	at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:37)
    	at org.junit.runner.Computer.getRunner(Computer.java:50)
    	at org.junit.runner.Computer$1.runnerForClass(Computer.java:31)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
    	at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:125)
    	at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:111)
    	at org.junit.runners.Suite.<init>(Suite.java:81)
    	at org.junit.runner.Computer$2.<init>(Computer.java:33)
    	at org.junit.runner.Computer.getSuite(Computer.java:28)
    	at org.junit.runner.Request.classes(Request.java:77)
    	at org.junit.runner.JUnitCore.run(JUnitCore.java:105)
    	at org.junit.runner.JUnitCore.runClasses(JUnitCore.java:62)
    	at org.junit.runner.JUnitCore.runClasses(JUnitCore.java:49)
    	at junitparams.BeforeAfterClassTest.shouldProvideHelpfulExceptionMessageWhenLifecycleAnnotationUsedImproperly(BeforeAfterClassTest.java:40)
    	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:61)
    	at junitparams.internal.InvokeParameterisedMethod.evaluate(InvokeParameterisedMethod.java:234)
    	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    	at junitparams.internal.ParameterisedTestMethodRunner.runMethodInvoker(ParameterisedTestMethodRunner.java:47)
    	at junitparams.internal.ParameterisedTestMethodRunner.runTestMethod(ParameterisedTestMethodRunner.java:40)
    	at junitparams.internal.ParameterisedTestClassRunner.runParameterisedTest(ParameterisedTestClassRunner.java:146)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:446)
    	at junitparams.JUnitParamsRunner.runChild(JUnitParamsRunner.java:393)
    	at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
    	at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
    	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
    	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
    	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    	at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:365)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:273)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
    	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:159)
    	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:377)
    	at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:138)
    	at org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:465)
    	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:451)
     expected:<"[]Method fail() should...> but was:<"[Invalid test class 'junitparams.BeforeAfterClassTest$NonStaticBeforeTest':
      1. ]Method fail() should...>
    [ERROR]   FilterableTest.shouldReturnOneDescriptionForSimpleTestCase:47 
    Expected size: 1 but was: 2 in:
    [secondTestMethod, firstTestMethod(junitparams.SampleTestCase)]
    [ERROR]   FilterableTest.shouldReturnParametrizedDescriptionsForParametrizedTestCase:57 
    Expected size: 1 but was: 2 in:
    [secondTestMethod, firstTestMethod(junitparams.SampleTestCase)]
    [ERROR]   RulesTest.shouldProvideHelpfulExceptionMessageWhenRuleIsUsedImproperly:48 
    Expecting message to be:
      "The @Rule 'testRule' must be public."
    but was:
      "Invalid test class 'junitparams.RulesTest$ProtectedRuleTest':
      1. The @Rule 'testRule' must be public."
    Throwable that failed the check:
    org.junit.runners.model.InvalidTestClassError: Invalid test class 'junitparams.RulesTest$ProtectedRuleTest':
      1. The @Rule 'testRule' must be public.
    	at org.junit.runners.ParentRunner.validate(ParentRunner.java:525)
    	at org.junit.runners.ParentRunner.<init>(ParentRunner.java:92)
    	at org.junit.runners.BlockJUnit4ClassRunner.<init>(BlockJUnit4ClassRunner.java:74)
    	at junitparams.JUnitParamsRunner.<init>(JUnitParamsRunner.java:400)
    	at jdk.internal.reflect.GeneratedConstructorAccessor6.newInstance(Unknown Source)
    	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
    	at org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:104)
    	at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
    	at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:37)
    	at org.junit.runner.Computer.getRunner(Computer.java:50)
    	at org.junit.runner.Computer$1.runnerForClass(Computer.java:31)
    	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
    	at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:125)
    	at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:111)
    	at org.junit.runners.Suite.<init>(Suite.java:81)
    	at org.junit.runner.Computer$2.<init>(Computer.java:33)
    	at org.junit.runner.Computer.getSuite(Computer.java:28)
    	at org.junit.runner.Request.classes(Request.java:77)
    	at org.junit.runner.JUnitCore.run(JUnitCore.java:105)
    	at org.junit.runner.JUnitCore.runClasses(JUnitCore.java:62)
    	at org.junit.runner.JUnitCore.runClasses(JUnitCore.java:49)
    	at junitparams.RulesTest.shouldProvideHelpfulExceptionMessageWhenRuleIsUsedImproperly(RulesTest.java:44)
    	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:61)
    	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
    	at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
    	at org.junit.rules.ExpectedException$ExpectedExceptionStatement.evaluate(ExpectedException.java:258)
    	at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:54)
    	at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:61)
    	at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:61)
    	at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:288)
    	at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:282)
    	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    	at java.base/java.lang.Thread.run(Thread.java:829)
     expected:<"[]The @Rule 'testRule'...> but was:<"[Invalid test class 'junitparams.RulesTest$ProtectedRuleTest':
      1. ]The @Rule 'testRule'...>
    [INFO] 
    [ERROR] Tests run: 295, Failures: 5, Errors: 0, Skipped: 6
    [INFO] 
    [INFO] 
    [INFO] ------------------------------------------------------------------------
    [INFO] Skipping JUnitParams
    [INFO] This project has been banned from the build due to previous failures.
    [INFO] ------------------------------------------------------------------------
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD FAILURE
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time:  14.573 s
    [INFO] Finished at: 2021-08-31T09:26:05Z
    [INFO] ------------------------------------------------------------------------
    [ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M4:test (default-test) on project JUnitParams: There are test failures.
    [ERROR] 
    [ERROR] Please refer to /builddir/build/BUILD/JUnitParams-JUnitParams-1.1.1/target/surefire-reports for the individual test results.
    [ERROR] Please refer to dump files (if any exist) [date].dump, [date]-jvmRun[N].dump and [date].dumpstream.
    [ERROR] -> [Help 1]
    [ERROR] 
    [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
    [ERROR] Re-run Maven using the -X switch to enable full debug logging.
    [ERROR] 
    [ERROR] For more information about the errors and possible solutions, please read the following articles:
    [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
    
    opened by didiksupriadi41 1
  • JUnitParams cannot be used with JUnit 5's @ExtendWith mechanism

    JUnitParams cannot be used with JUnit 5's @ExtendWith mechanism

    I want to continue using JUnitParams but I am working on a codebase which insists on the use of JUnit Jupiter.

    Please add an equivalent of JUnitParamsRunner which works with@ExtendWith

    Please do not suggest that I use native JUnit 5 parameterised tests in any comments or responses.

    opened by ghost 0
  • status of this project

    status of this project

    Hi,

    Firstly, congrats for this great work. We have been using it for quite a long time and we haven't had issues. Now, we would like to use it in another project but there are some concerns about the support of this. It looks like there has been no activity in the last months.

    Could anyone, please, give us some update on this regard?

    Many thanks, David

    opened by iguannago 1
  • Include parent annotations in parameterized child test descriptions

    Include parent annotations in parameterized child test descriptions

    Maintaining annotations on parameterized tests so that annotation-based frameworks (eg, Allure) can still see those annotations on the individual methods.

    opened by ghost 0
Releases(JUnitParams-1.1.1)
  • JUnitParams-1.1.1(Nov 3, 2017)

  • JUnitParams-1.0.4(Jan 26, 2015)

    Configurable test case name

    New annotation @TestCaseName that can be used for test case name configuration:

      @Test
      @Parameters({ "1,1", "2,2" })
      @TestCaseName("factorial({0}) = {1}")
      public void custom_names_for_test_case(int argument, int result) { }
    

    will produce tests with names:

    factorial(1) = 1
    factorial(2) = 2
    

    Allow usage of enums as a data source

    Parameters annotation now allows passing Enum values as parameters

    @Parameters(source = Fruit.class)
    

    Test results filtering fixed

    When starting a single test method from within an IDE, the tests results were not shown up properly in the results tab.

    Source code(tar.gz)
    Source code(zip)
Library that allows tests written in Java to follow the BDD style introduced by RSpec and Jasmine.

J8Spec J8Spec is a library that allows tests written in Java to follow the BDD style introduced by RSpec and Jasmine. More details here: j8spec.github

J8Spec 45 Feb 17, 2022
Serenity BDD is a test automation library designed to make writing automated acceptance tests easier, and more fun.

That feeling you get when you know you can trust your tests Serenity BDD is a library designed to make writing automated acceptance tests easier, and

Serenity BDD 654 Dec 28, 2022
Testcontainers is a Java library that supports JUnit tests, providing lightweight, throwaway instances of common databases, Selenium web browsers, or anything else that can run in a Docker container.

Testcontainers Testcontainers is a Java library that supports JUnit tests, providing lightweight, throwaway instances of common databases, Selenium we

null 6.7k Jan 9, 2023
Most popular Mocking framework for unit tests written in Java

Most popular mocking framework for Java Current version is 3.x Still on Mockito 1.x? See what's new in Mockito 2! Mockito 3 does not introduce any bre

mockito 13.6k Jan 9, 2023
Roman Beskrovnyi 248 Dec 21, 2022
Arbitrary test data generator for parameterized tests in Java inspired by AutoFixture.

AutoParams AutoParams is an arbitrary test data generator for parameterized tests in Java inspired by AutoFixture. Sometimes setting all the test data

null 260 Jan 2, 2023
CodeSheriff is a simple library that helps you in writing JUnit tests that check the quality of your code

CodeSheriff is a simple library that helps you in writing JUnit tests that check the quality of your code. For example, CodeSheriff may fail because you have methods in your code that have more than X lines of code, or that have complexity greater than Y.

Maurício Aniche 62 Feb 10, 2022
This is a repository to collect JUnit Tests for GAD exercises at TUM in SS21

TUM_GAD_Tests_SS21 This is a repository to collect JUnit Tests for GAD exercises at TUM in SS21. These tests have been written by students for student

null 41 Oct 31, 2022
Utility to automatically manage all web element waits and enables to write wait-free selenium tests.

selenium-auto-wait selenium-auto-wait automatically manages all weblement waits and makes you to write wait free selenium tests. Features Waits till e

Sudharsan Selvaraj 31 Nov 1, 2022
🔌 Simple library to manipulate HTTP requests/responses and capture network logs made by the browser using selenium tests without using any proxies

Simple library to manipulate HTTP requests and responses, capture the network logs made by the browser using selenium tests without using any proxies

Sudharsan Selvaraj 29 Oct 23, 2022
IntelliJ IDEA and JUnit: Writing, Finding, and Running Tests

IntelliJ IDEA and JUnit: Writing, Finding, and Running Tests ?? Webinar https://blog.jetbrains.com/idea/2021/11/live-stream-recording-intellij-idea-an

Christian Stein 11 Jul 23, 2022
Never debug a test again: Detailed failure reports and hassle free assertions for Java tests - Power Asserts for Java

Scott Test Reporter for Maven and Gradle Get extremely detailed failure messages for your tests without assertion libraries, additional configuration

Dávid Csákvári 133 Nov 17, 2022
Concise UI Tests with Java!

Selenide = UI Testing Framework powered by Selenium WebDriver What is Selenide? Selenide is a framework for writing easy-to-read and easy-to-maintain

Selenide 1.6k Dec 30, 2022
High-level contextual steps in your tests for any reporting tool

Xteps High-level contextual steps in your tests for any reporting tool. License Maven Central Javadoc Xteps Xteps Allure Xteps ReportPortal How to use

Evgenii Plugatar 8 Dec 11, 2022
🤖 Unleash the full power of test.ai into your Java Selenium tests

The test.ai selenium SDK is a simple library that makes it easy to write robust cross-browser web tests backed by computer vision and artificial intelligence.

test.ai 5 Jul 15, 2022
Web automation example code of tests running parallely

Don't forget to give a ⭐ to make the project popular. ❓ What is this Repository about? This repo contains example code to run a single test parallely

Mohammad Faisal Khatri 1 Apr 3, 2022
Automation Tests (REST-API with REST-ASSURED examples)

Automation Tests (REST-API with REST-ASSURED examples) Technology Stack IDEA Java Junit5 Gradle Selenide Allure Jenkins Rest-Assured See details: src/

null 3 Apr 11, 2022
🤖 Unleash the full power of test.ai into your Java Appium tests

The test.ai Appium SDK is a simple library that makes it easy to write robust cross-platform mobile application tests backed by computer vision and ar

test.ai 9 Jun 4, 2022
This repository includes selenium tests examples using cucumber-jvm framework.

Cucumber Selenium Tests This repository includes cucumber selenium tests examples using wikipedia.org. Run tests To run tests on your local machine, y

Denys Vozniuk 3 Nov 27, 2022