Interface Arguments


@API(status=STABLE,
     since="5.7")
public interface Arguments
Arguments is an abstraction that provides access to an array of objects to be used for invoking a @ParameterizedTest method.

A Stream of such Arguments will typically be provided by an ArgumentsProvider.

Since:
5.0
See Also:
ParameterizedTest, ArgumentsSource, ArgumentsProvider, ArgumentConverter
API Note:

This interface is specifically designed as a simple holder of arguments of a parameterized test. Therefore, if you end up transforming or filtering the arguments, you should consider using one of the following in intermediate steps:

  • The standard collections
  • Tuples from third-party libraries, e.g., Commons Lang, or javatuples
  • Your own data class

Alternatively, you can use an ArgumentConverter to convert some of the arguments from one type to another.

  • Method Summary

    Modifier and Type Method Description
    static Arguments arguments​(Object... arguments)
    Factory method for creating an instance of Arguments based on the supplied arguments.
    Object[] get()
    Get the arguments used for an invocation of the @ParameterizedTest method.
    static Arguments of​(Object... arguments)
    Factory method for creating an instance of Arguments based on the supplied arguments.
  • Method Details

    • get

      Object[] get()
      Get the arguments used for an invocation of the @ParameterizedTest method.
      Returns:
      the arguments; must not be null
      API Note:
      If you need a type-safe way to access some or all of the arguments, please read the class-level API note.
    • of

      static Arguments of​(Object... arguments)
      Factory method for creating an instance of Arguments based on the supplied arguments.
      Parameters:
      arguments - the arguments to be used for an invocation of the test method; must not be null
      Returns:
      an instance of Arguments; never null
      See Also:
      arguments(Object...)
    • arguments

      static Arguments arguments​(Object... arguments)
      Factory method for creating an instance of Arguments based on the supplied arguments.

      This method is an alias for of(java.lang.Object...) and is intended to be used when statically imported — for example, via: import static org.junit.jupiter.params.provider.Arguments.arguments;

      Parameters:
      arguments - the arguments to be used for an invocation of the test method; must not be null
      Returns:
      an instance of Arguments; never null
      Since:
      5.3