Full name:
org.eclipse.tycho:tycho-surefire-plugin:0.17.0:test
Description:
Executes tests in an OSGi runtime.
The goal launches an OSGi runtime and executes the project's tests in that runtime. The "test runtime" consists of the bundle built in this project and its transitive dependencies, plus some Equinox and test harness bundles. The bundles are resolved from the target platform of the project. Note that the test runtime does typically not contain the entire target platform. If there are implicitly required bundles (e.g. org.eclipse.equinox.ds to make declarative services work), they need to be added manually through an explicit dependencies configuration.
Attributes:
| Name | Type | Since | Description |
|---|---|---|---|
| appArgLine | String | - | Arbitrary applications arguments to set on the command line. |
| application | String | - | Eclipse application to be run. If not specified, default application org.eclipse.ui.ide.workbench will be used. Application runnable will be invoked from test harness, not directly from Eclipse. |
| argLine | String | - | Arbitrary JVM options to set on the command line. |
| bundleStartLevel | BundleStartLevel[] | - | Bundle start level and auto start configuration used by the test runtime. |
| debugPort | int | - | Set this parameter to suspend the test JVM waiting for a client to open a remote debug session on the specified port. |
| deleteOsgiDataDirectory | boolean | - | Whether to recursively delete the directory
osgiDataDirectory before running the tests. Default value is: true. |
| dependencies | Dependency[] | - | Additional dependencies to be added to the test runtime. The dependencies specified here are - together with the dependencies specified in the MANIFEST.MF of the project - resolved against the target platform. The resulting set of bundles is included in the test runtime. |
| environmentVariables | Map | - | Additional environments to set for the forked test JVM. |
| excludes | List | - | List of patterns (separated by commas) used to specify the tests that should be excluded in testing. When not specified and whent the test parameter is not specified, the default excludes will be **/Abstract*Test.java **/Abstract*TestCase.java **/*$* |
| explodedBundles | String[] | - | List of bundles that must be expanded in order to execute the tests |
| failIfNoTests | boolean | - | If set to "false" the test execution will not fail in case there are no tests found. Default value is: true. |
| forkedProcessTimeoutInSeconds | int | - | Kill the forked test process after a certain number of seconds. If set to 0, wait forever for the process, never timing out. |
| frameworkExtensions | Dependency[] | - | List of framework extension bundles to add. Note: The goal does not automatically detect which bundles in the test runtime are framework extensions, but they have to be explicitly specified using this parameter. |
| includes | List | - | List of patterns (separated by commas) used to specify the tests that should be included in testing. When not specified and whent the test parameter is not specified, the default includes will be **/Test*.java **/*Test.java **/*TestCase.java |
| osgiDataDirectory | File | - | OSGi
data directory (osgi.instance.area, aka the
workspace) of the Equinox runtime used to execute tests. Default value is: ${project.build.directory}/work/data/. |
| parallel | ParallelMode | 0.16.0 | (JUnit 4.7 provider) Supports values "classes"/"methods"/"both" to run in separate threads, as controlled by threadCount. |
| perCoreThreadCount | boolean | 0.16.0 | (JUnit 4.7 provider) Indicates that threadCount is per cpu core. Default value is: true. |
| pluginArtifacts | List | - | (no description) |
| product | String | - | Eclipse product to be run, i.e. -product parameter passed to test Eclipse runtime. |
| providerHint | String | 0.16.0 | Normally tycho will automatically determine the test framework provider based on the test project's classpath. Use this to force using a test framework provider implementation with the given role hint. Tycho comes with providers "junit3","junit4","junit47". Note that when specifying a providerHint, you have to make sure the provider is actually available in the dependencies of tycho-surefire-plugin. |
| providerProperties | Properties | 0.16.0 | Use this to specify surefire provider-specific properties. |
| redirectTestOutputToFile | boolean | - | Set this to "true" to redirect the unit test standard output to a file (found in reportsDirectory/testName-output.txt). Default value is: false. |
| reportsDirectory | File | - | Base directory where all reports are written to. |
| showEclipseLog | boolean | - | Enables -debug -consolelog for the test OSGi runtime Default value is: false. |
| skip | boolean | - | Same as skipTests Default value is: false. |
| skipExec | boolean | - | Deprecated. Use skipTests instead. Default value is: false. |
| skipTests | boolean | - | Set this to "true" to skip running tests, but still compile them. Its use is NOT RECOMMENDED, but quite convenient on occasion. Default value is: false. |
| surefireProperties | File | - | (no description) |
| systemProperties | Map | - | Additional system properties to set for the forked test JVM. |
| test | String | - | Specify this parameter if you want to use the test pattern matching notation, Ant pattern matching, to select tests to run. The Ant pattern will be used to create an include pattern formatted like **/${test}.java When used, the includes and excludes patterns parameters are ignored |
| testClass | String | - | See testSuite |
| testClassesDirectory | File | - | The directory containing generated test classes of the project being tested. |
| testFailureIgnore | boolean | - | Set this to true to ignore a failure during testing. Its use is NOT RECOMMENDED, but quite convenient on occasion. Default value is: false. |
| testSuite | String | - | Bundle-SymbolicName of the test suite, a special bundle that knows how to locate and execute all relevant tests. testSuite and testClass identify single test class to run. All other tests will be ignored if both testSuite and testClass are provided. It is an error if provide one of the two parameters but not the other. |
| threadCount | int | 0.16.0 | (JUnit 4.7 provider) The attribute thread-count allows you to specify how many threads should be allocated for this execution. Only makes sense to use in conjunction with the parallel parameter. |
| useUIHarness | boolean | - | Run tests using UI (true) or headless (false) test harness. Default value is: false. |
| useUIThread | boolean | - | Run tests in UI (true) or background (false) thread. Only applies to UI test harness. Default value is: true. |
| useUnlimitedThreads | boolean | 0.16.0 | (JUnit 4.7 provider) Indicates that the thread pool will be unlimited. The parallel parameter and the actual number of classes/methods will decide. Setting this to "true" effectively disables perCoreThreadCount and threadCount. Default value is: false. |
| work | File | - | Root directory (osgi.install.area) of the Equinox runtime used to execute tests. Default value is: ${project.build.directory}/work. |
Arbitrary applications arguments to set on the command line.
Eclipse application to be run. If not specified, default application org.eclipse.ui.ide.workbench will be used. Application runnable will be invoked from test harness, not directly from Eclipse.
Arbitrary JVM options to set on the command line.
Bundle start level and auto start configuration used by the test runtime.
Set this parameter to suspend the test JVM waiting for a client to open a remote debug session on the specified port.
Additional dependencies to be added to the test runtime.
The dependencies specified here are - together with the dependencies specified in the MANIFEST.MF of the project - resolved against the target platform. The resulting set of bundles is included in the test runtime.
Additional environments to set for the forked test JVM.
List of patterns (separated by commas) used to specify the tests that should be excluded in testing. When not specified and whent the test parameter is not specified, the default excludes will be **/Abstract*Test.java **/Abstract*TestCase.java **/*$*
List of bundles that must be expanded in order to execute the tests
If set to "false" the test execution will not fail in case there are no tests found.
forkedProcessTimeoutInSeconds:
Kill the forked test process after a certain number of seconds. If set to 0, wait forever for the process, never timing out.
List of framework extension bundles to add. Note: The goal does not automatically detect which bundles in the test runtime are framework extensions, but they have to be explicitly specified using this parameter.
List of patterns (separated by commas) used to specify the tests that should be included in testing. When not specified and whent the test parameter is not specified, the default includes will be **/Test*.java **/*Test.java **/*TestCase.java
(JUnit 4.7 provider) Supports values "classes"/"methods"/"both" to run in separate threads, as controlled by threadCount.
(JUnit 4.7 provider) Indicates that threadCount is per cpu core.
Eclipse product to be run, i.e. -product parameter passed to test Eclipse runtime.
Normally tycho will automatically determine the test framework provider based on the test project's classpath. Use this to force using a test framework provider implementation with the given role hint. Tycho comes with providers "junit3","junit4","junit47". Note that when specifying a providerHint, you have to make sure the provider is actually available in the dependencies of tycho-surefire-plugin.
Use this to specify surefire provider-specific properties.
Set this to "true" to redirect the unit test standard output to a file (found in reportsDirectory/testName-output.txt).
Base directory where all reports are written to.
Enables -debug -consolelog for the test OSGi runtime
skip:
Same as skipTests
Set this to "true" to skip running tests, but still compile them. Its use is NOT RECOMMENDED, but quite convenient on occasion.
Additional system properties to set for the forked test JVM.
test:
Specify this parameter if you want to use the test pattern matching notation, Ant pattern matching, to select tests to run. The Ant pattern will be used to create an include pattern formatted like **/${test}.java When used, the includes and excludes patterns parameters are ignored
See testSuite
The directory containing generated test classes of the project being tested.
Set this to true to ignore a failure during testing. Its use is NOT RECOMMENDED, but quite convenient on occasion.
Bundle-SymbolicName of the test suite, a special bundle that knows how to locate and execute all relevant tests.
testSuite and testClass identify single test class to run. All other tests will be ignored if both testSuite and testClass are provided. It is an error if provide one of the two parameters but not the other.
(JUnit 4.7 provider) The attribute thread-count allows you to specify how many threads should be allocated for this execution. Only makes sense to use in conjunction with the parallel parameter.
Run tests using UI (true) or headless (false) test harness.
Run tests in UI (true) or background (false) thread. Only applies to UI test harness.
(JUnit 4.7 provider) Indicates that the thread pool will be unlimited. The parallel parameter and the actual number of classes/methods will decide. Setting this to "true" effectively disables perCoreThreadCount and threadCount.
work:
Root directory (osgi.install.area) of the Equinox runtime used to execute tests.