| <!DOCTYPE html> |
| <!-- |
| | Generated by Apache Maven Doxia Site Renderer 1.8.1 from target/generated-site/xdoc/test-mojo.xml at 2019-04-05 |
| | Rendered using Apache Maven Fluido Skin 1.7 |
| --> |
| <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> |
| <head> |
| <meta charset="UTF-8" /> |
| <meta name="viewport" content="width=device-width, initial-scale=1.0" /> |
| <meta name="Date-Revision-yyyymmdd" content="20190405" /> |
| <meta http-equiv="Content-Language" content="en" /> |
| <title>Tycho Surefire Plugin – tycho-surefire:test</title> |
| <link rel="stylesheet" href="./css/apache-maven-fluido-1.7.min.css" /> |
| <link rel="stylesheet" href="./css/site.css" /> |
| <link rel="stylesheet" href="./css/print.css" media="print" /> |
| <script type="text/javascript" src="./js/apache-maven-fluido-1.7.min.js"></script> |
| </head> |
| <body class="topBarDisabled"> |
| <div class="container-fluid"> |
| <div id="banner"> |
| <div class="pull-left"><div id="bannerLeft"><h2>Tycho Surefire Plugin</h2> |
| </div> |
| </div> |
| <div class="pull-right"></div> |
| <div class="clear"><hr/></div> |
| </div> |
| |
| <div id="breadcrumbs"> |
| <ul class="breadcrumb"> |
| <li id="publishDate">Last Published: 2019-04-05<span class="divider">|</span> |
| </li> |
| <li id="projectVersion">Version: 1.4.0</li> |
| </ul> |
| </div> |
| <div class="row-fluid"> |
| <div id="leftColumn" class="span2"> |
| <div class="well sidebar-nav"> |
| <ul class="nav nav-list"> |
| <li class="nav-header">Tycho</li> |
| <li><a href="../index.html" title="Introduction"><span class="none"></span>Introduction</a></li> |
| <li><a href="../tycho-compiler-plugin/plugin-info.html" title="Compiler Plugin"><span class="none"></span>Compiler Plugin</a></li> |
| <li><a href="../tycho-packaging-plugin/plugin-info.html" title="Packaging Plugin"><span class="none"></span>Packaging Plugin</a></li> |
| <li><a href="../BuildProperties.html" title="Build Properties"><span class="none"></span>Build Properties</a></li> |
| <li><a href="../tycho-surefire-plugin/plugin-info.html" title="Surefire Plugin"><span class="none"></span>Surefire Plugin</a></li> |
| <li><a href="../tycho-p2/tycho-p2-publisher-plugin/plugin-info.html" title="p2 Publisher Plugin"><span class="none"></span>p2 Publisher Plugin</a></li> |
| <li><a href="../tycho-p2/tycho-p2-repository-plugin/plugin-info.html" title="p2 Repository Plugin"><span class="none"></span>p2 Repository Plugin</a></li> |
| <li><a href="../tycho-p2/tycho-p2-director-plugin/plugin-info.html" title="p2 Director Plugin"><span class="none"></span>p2 Director Plugin</a></li> |
| <li><a href="../tycho-source-plugin/plugin-info.html" title="Source Plugin"><span class="none"></span>Source Plugin</a></li> |
| <li><a href="../tycho-release/tycho-versions-plugin/plugin-info.html" title="Versions Plugin"><span class="none"></span>Versions Plugin</a></li> |
| <li><a href="../tycho-pomgenerator-plugin/plugin-info.html" title="POM Generator Plugin"><span class="none"></span>POM Generator Plugin</a></li> |
| <li><a href="../TychoProperties.html" title="Tycho Properties"><span class="none"></span>Tycho Properties</a></li> |
| </ul> |
| <hr /> |
| <div id="poweredBy"> |
| <div class="clear"></div> |
| <div class="clear"></div> |
| <div class="clear"></div> |
| <div class="clear"></div> |
| <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a> |
| </div> |
| </div> |
| </div> |
| <div id="bodyColumn" class="span10" > |
| |
| |
| <div class="section"> |
| <h2><a name="tycho-surefire:test"></a>tycho-surefire:test</h2> |
| |
| <p><b>Full name</b>:</p> |
| |
| <p>org.eclipse.tycho:tycho-surefire-plugin:1.4.0:test</p> |
| |
| <p><b>Description</b>:</p> |
| |
| <div> |
| <p>Executes tests in an OSGi runtime.</p> |
| |
| <p>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 <i>not</i> contain the entire target platform. If there |
| are implicitly required bundles (e.g. |
| <tt>org.eclipse.equinox.ds</tt> to make declarative services work), |
| they need to be added manually through an |
| <tt>extraRequirements</tt> configuration on the |
| <tt>target-platform-configuration</tt> plugin.</p></div> |
| |
| <p><b>Attributes</b>:</p> |
| |
| <ul> |
| |
| <li>Requires a Maven project to be executed.</li> |
| |
| <li>Requires dependency resolution of artifacts in scope: <tt>runtime</tt>.</li> |
| |
| <li>Binds by default to the <a class="externalLink" href="http://maven.apache.org/ref/current/maven-core/lifecycles.html">lifecycle phase</a>: <tt>integration-test</tt>.</li> |
| </ul> |
| |
| <div class="section"> |
| <h3><a name="Optional_Parameters"></a>Optional Parameters</h3> |
| |
| <table class="table table-striped" border="0"> |
| |
| <tr class="a"> |
| |
| <th>Name</th> |
| |
| <th>Type</th> |
| |
| <th>Since</th> |
| |
| <th>Description</th> |
| </tr> |
| |
| <tr class="b"> |
| |
| <td><tt><a href="#appArgLine"><appArgLine></a></tt></td> |
| |
| <td><tt>String</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>Arbitrary applications arguments to set on the command line.<br /></td> |
| </tr> |
| |
| <tr class="a"> |
| |
| <td><tt><a href="#application"><application></a></tt></td> |
| |
| <td><tt>String</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>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. Note that you need to ensure that the bundle which defines |
| the configured application is included in the test runtime.<br /></td> |
| </tr> |
| |
| <tr class="b"> |
| |
| <td><tt><a href="#argLine"><argLine></a></tt></td> |
| |
| <td><tt>String</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>Arbitrary JVM options to set on the command line.<br /><b>User property is</b>: <tt>tycho.testArgLine</tt>.<br /></td> |
| </tr> |
| |
| <tr class="a"> |
| |
| <td><tt><a href="#bundleStartLevel"><bundleStartLevel></a></tt></td> |
| |
| <td><tt>BundleStartLevel[]</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>Bundle start level and auto start configuration used by the test |
| runtime. Ignored if <tt>testRuntime</tt> is |
| <tt>p2Installed</tt>. Example: |
| |
| <div> |
| <pre> |
| <bundleStartLevel> |
| <bundle> |
| <id>foo.bar.myplugin</id> |
| <level>6</level> |
| <autoStart>true</autoStart> |
| </bundle> |
| </bundleStartLevel> |
| </pre></div><br /></td> |
| </tr> |
| |
| <tr class="b"> |
| |
| <td><tt><a href="#debugPort"><debugPort></a></tt></td> |
| |
| <td><tt>int</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>Set this parameter to suspend the test JVM waiting for a client to |
| open a remote debug session on the specified port.<br /><b>User property is</b>: <tt>debugPort</tt>.<br /></td> |
| </tr> |
| |
| <tr class="a"> |
| |
| <td><tt><a href="#defaultStartLevel"><defaultStartLevel></a></tt></td> |
| |
| <td><tt>BundleStartLevel</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>The default bundle start level and auto start configuration used by |
| the test runtime for bundles where the start level/auto start is |
| not configured in <tt>bundleStartLevel</tt>. Ignored if |
| <tt>testRuntime</tt> is <tt>p2Installed</tt>. Example: |
| |
| <div> |
| <pre> |
| <defaultStartLevel> |
| <level>6</level> |
| <autoStart>true</autoStart> |
| </defaultStartLevel> |
| </pre></div><br /></td> |
| </tr> |
| |
| <tr class="b"> |
| |
| <td><tt><a href="#deleteOsgiDataDirectory"><deleteOsgiDataDirectory></a></tt></td> |
| |
| <td><tt>boolean</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>Whether to recursively delete the directory |
| <tt>osgiDataDirectory</tt> before running the tests.<br /><b>Default value is</b>: <tt>true</tt>.<br /></td> |
| </tr> |
| |
| <tr class="a"> |
| |
| <td><tt><a href="#dependencies"><dependencies></a></tt></td> |
| |
| <td><tt>Dependency[]</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>Additional dependencies to be added to the test runtime. Ignored if |
| <tt>testRuntime</tt> is <tt>p2Installed</tt>. Note: This |
| parameter has only limited support for dependencies to artifacts |
| within the reactor. Therefore it is recommended to specify |
| <tt>extraRequirements</tt> on the |
| <tt>target-platform-configuration</tt> plugin instead. Example: |
| |
| <div> |
| <pre> |
| <plugin> |
| <groupId>org.eclipse.tycho</groupId> |
| <artifactId>target-platform-configuration</artifactId> |
| <version>${tycho-version}</version> |
| <configuration> |
| <dependency-resolution> |
| <extraRequirements> |
| <requirement> |
| <type>eclipse-feature</type> |
| <id>example.project.feature</id> |
| <versionRange>0.0.0</versionRange> |
| </requirement> |
| </extraRequirements> |
| </dependency-resolution> |
| </configuration> |
| </plugin> |
| </pre></div> |
| |
| The dependencies specified as <tt>extraRequirements</tt> are - |
| together with the dependencies specified in the |
| <tt>MANIFEST.MF</tt> of the project - transitively resolved against |
| the target platform. The resulting set of bundles is included in |
| the test runtime.<br /></td> |
| </tr> |
| |
| <tr class="b"> |
| |
| <td><tt><a href="#environmentVariables"><environmentVariables></a></tt></td> |
| |
| <td><tt>Map</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>Additional environments to set for the forked test JVM.<br /></td> |
| </tr> |
| |
| <tr class="a"> |
| |
| <td><tt><a href="#excludedGroups"><excludedGroups></a></tt></td> |
| |
| <td><tt>String</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>(junit47 provider with JUnit4.8+ only) Excluded groups/categories |
| (comma-separated). Any methods/classes/etc with one of the |
| groups/categories specified in this list will specifically not be |
| run. For JUnit, this parameter forces the use of the junit47 |
| provider<br /><b>User property is</b>: <tt>excludedGroups</tt>.<br /></td> |
| </tr> |
| |
| <tr class="b"> |
| |
| <td><tt><a href="#excludes"><excludes></a></tt></td> |
| |
| <td><tt>List</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>List of patterns (separated by commas) used to specify the tests |
| that should be excluded in testing. When not specified and when the |
| <tt>test</tt> parameter is not specified, the default excludes |
| will be <tt>**/*$*</tt> (which excludes all inner classes).<br /></td> |
| </tr> |
| |
| <tr class="a"> |
| |
| <td><tt><a href="#explodedBundles"><explodedBundles></a></tt></td> |
| |
| <td><tt>String[]</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>List of bundles that must be expanded in order to execute the |
| tests. Ignored if <tt>testRuntime</tt> is |
| <tt>p2Installed</tt>.<br /></td> |
| </tr> |
| |
| <tr class="b"> |
| |
| <td><tt><a href="#failIfNoTests"><failIfNoTests></a></tt></td> |
| |
| <td><tt>boolean</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>If set to "false" the test execution will not fail in case there |
| are no tests found.<br /><b>Default value is</b>: <tt>true</tt>.<br /><b>User property is</b>: <tt>failIfNoTests</tt>.<br /></td> |
| </tr> |
| |
| <tr class="a"> |
| |
| <td><tt><a href="#forkedProcessTimeoutInSeconds"><forkedProcessTimeoutInSeconds></a></tt></td> |
| |
| <td><tt>int</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>Kill the forked test process after a certain number of seconds. If |
| set to 0, wait forever for the process, never timing out.<br /><b>User property is</b>: <tt>surefire.timeout</tt>.<br /></td> |
| </tr> |
| |
| <tr class="b"> |
| |
| <td><tt><a href="#frameworkExtensions"><frameworkExtensions></a></tt></td> |
| |
| <td><tt>Dependency[]</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>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. Ignored if <tt>testRuntime</tt> is |
| <tt>p2Installed</tt>.<br /></td> |
| </tr> |
| |
| <tr class="a"> |
| |
| <td><tt><a href="#groups"><groups></a></tt></td> |
| |
| <td><tt>String</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>(junit47 provider with JUnit4.8+ only) Groups/categories for this |
| test (comma-separated). Only classes/methods/etc decorated with one |
| of the group/category specified here will be included in test run, |
| if specified. For JUnit, this parameter forces the use of the |
| junit47 provider<br /><b>User property is</b>: <tt>groups</tt>.<br /></td> |
| </tr> |
| |
| <tr class="b"> |
| |
| <td><tt><a href="#includes"><includes></a></tt></td> |
| |
| <td><tt>List</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>List of patterns (separated by commas) used to specify the tests |
| that should be included in testing. When not specified and when the |
| <tt>test</tt> parameter is not specified, the default includes |
| will be <tt>**/Test*.java **/*Test.java **/*TestCase.java</tt><br /></td> |
| </tr> |
| |
| <tr class="a"> |
| |
| <td><tt><a href="#osgiDataDirectory"><osgiDataDirectory></a></tt></td> |
| |
| <td><tt>File</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td><a class="externalLink" href="http://help.eclipse.org/juno/topic/org.eclipse.platform.doc.isv/reference/misc/runtime-options.html#osgiinstancearea">OSGi |
| data directory</a> (<tt>osgi.instance.area</tt>, aka the |
| workspace) of the Equinox runtime used to execute tests.<br /><b>Default value is</b>: <tt>${project.build.directory}/work/data/</tt>.<br /></td> |
| </tr> |
| |
| <tr class="b"> |
| |
| <td><tt><a href="#parallel"><parallel></a></tt></td> |
| |
| <td><tt>ParallelMode</tt></td> |
| |
| <td><tt>0.16.0</tt></td> |
| |
| <td>(JUnit 4.7 provider) Supports values "classes"/"methods"/"both" to |
| run in separate threads, as controlled by threadCount.<br /><b>User property is</b>: <tt>parallel</tt>.<br /></td> |
| </tr> |
| |
| <tr class="a"> |
| |
| <td><tt><a href="#perCoreThreadCount"><perCoreThreadCount></a></tt></td> |
| |
| <td><tt>boolean</tt></td> |
| |
| <td><tt>0.16.0</tt></td> |
| |
| <td>(JUnit 4.7 provider) Indicates that threadCount is per cpu core.<br /><b>Default value is</b>: <tt>true</tt>.<br /><b>User property is</b>: <tt>perCoreThreadCount</tt>.<br /></td> |
| </tr> |
| |
| <tr class="b"> |
| |
| <td><tt><a href="#pluginArtifacts"><pluginArtifacts></a></tt></td> |
| |
| <td><tt>List</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>(no description)<br /><b>User property is</b>: <tt>plugin.artifacts</tt>.<br /></td> |
| </tr> |
| |
| <tr class="a"> |
| |
| <td><tt><a href="#product"><product></a></tt></td> |
| |
| <td><tt>String</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>Eclipse product to be run, i.e. -product parameter passed to test |
| Eclipse runtime.<br /></td> |
| </tr> |
| |
| <tr class="b"> |
| |
| <td><tt><a href="#profileName"><profileName></a></tt></td> |
| |
| <td><tt>String</tt></td> |
| |
| <td><tt>0.19.0</tt></td> |
| |
| <td>p2 <a class="externalLink" href="http://help.eclipse.org/kepler/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Fguide%2Fp2_director.html">profile</a> |
| name of the installation under test. Only relevant if |
| <tt>testRuntime</tt> is <tt>p2Installed</tt>. If tests are |
| installed on top of an already existing installation in |
| <tt>work</tt>, this must match the name of the existing |
| profile.<br /><b>Default value is</b>: <tt>DefaultProfile</tt>.<br /></td> |
| </tr> |
| |
| <tr class="a"> |
| |
| <td><tt><a href="#providerHint"><providerHint></a></tt></td> |
| |
| <td><tt>String</tt></td> |
| |
| <td><tt>0.16.0</tt></td> |
| |
| <td>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.<br /></td> |
| </tr> |
| |
| <tr class="b"> |
| |
| <td><tt><a href="#providerProperties"><providerProperties></a></tt></td> |
| |
| <td><tt>Properties</tt></td> |
| |
| <td><tt>0.16.0</tt></td> |
| |
| <td>Use this to specify surefire provider-specific properties.<br /></td> |
| </tr> |
| |
| <tr class="a"> |
| |
| <td><tt><a href="#redirectTestOutputToFile"><redirectTestOutputToFile></a></tt></td> |
| |
| <td><tt>boolean</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>Set this to "true" to redirect the unit test standard output to a |
| file (found in reportsDirectory/testName-output.txt).<br /><b>Default value is</b>: <tt>false</tt>.<br /><b>User property is</b>: <tt>maven.test.redirectTestOutputToFile</tt>.<br /></td> |
| </tr> |
| |
| <tr class="b"> |
| |
| <td><tt><a href="#reportsDirectory"><reportsDirectory></a></tt></td> |
| |
| <td><tt>File</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>Base directory where all reports are written to.<br /><b>Default value is</b>: <tt>${project.build.directory}/surefire-reports</tt>.<br /></td> |
| </tr> |
| |
| <tr class="a"> |
| |
| <td><tt><a href="#rerunFailingTestsCount"><rerunFailingTestsCount></a></tt></td> |
| |
| <td><tt>Integer</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>Flaky tests will re-run until they pass or the number of reruns has |
| been exhausted. See surefire documentation for details. |
| |
| <p>Note: This feature is supported only for JUnit 4.x</p><br /><b>Default value is</b>: <tt>0</tt>.<br /><b>User property is</b>: <tt>surefire.rerunFailingTestsCount</tt>.<br /></td> |
| </tr> |
| |
| <tr class="b"> |
| |
| <td><tt><a href="#runOrder"><runOrder></a></tt></td> |
| |
| <td><tt>String</tt></td> |
| |
| <td><tt>0.19.0</tt></td> |
| |
| <td>Defines the order the tests will be run in. Supported values are |
| "alphabetical", "reversealphabetical", "random", "hourly" |
| (alphabetical on even hours, reverse alphabetical on odd hours) and |
| "filesystem".<br /><b>Default value is</b>: <tt>filesystem</tt>.<br /></td> |
| </tr> |
| |
| <tr class="a"> |
| |
| <td><tt><a href="#showEclipseLog"><showEclipseLog></a></tt></td> |
| |
| <td><tt>boolean</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>Enables -debug -consolelog for the test OSGi runtime<br /><b>Default value is</b>: <tt>false</tt>.<br /><b>User property is</b>: <tt>tycho.showEclipseLog</tt>.<br /></td> |
| </tr> |
| |
| <tr class="b"> |
| |
| <td><tt><a href="#skip"><skip></a></tt></td> |
| |
| <td><tt>Boolean</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>Same as <tt>skipTests</tt><br /><b>User property is</b>: <tt>maven.test.skip</tt>.<br /></td> |
| </tr> |
| |
| <tr class="a"> |
| |
| <td><tt><a href="#skipAfterFailureCount"><skipAfterFailureCount></a></tt></td> |
| |
| <td><tt>Integer</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>Skips the remaining tests after the Nth failure or error. See |
| surefire documentation for details.<br /><b>Default value is</b>: <tt>0</tt>.<br /><b>User property is</b>: <tt>surefire.skipAfterFailureCount</tt>.<br /></td> |
| </tr> |
| |
| <tr class="b"> |
| |
| <td><tt><a href="#skipExec"><skipExec></a></tt></td> |
| |
| <td><tt>boolean</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td><b>Deprecated.</b> Use skipTests instead.<br /><b>User property is</b>: <tt>maven.test.skipExec</tt>.<br /></td> |
| </tr> |
| |
| <tr class="a"> |
| |
| <td><tt><a href="#skipTests"><skipTests></a></tt></td> |
| |
| <td><tt>Boolean</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>Set this to "true" to skip running tests, but still compile them. |
| Its use is NOT RECOMMENDED, but quite convenient on occasion. |
| Default: <tt>false</tt><br /><b>User property is</b>: <tt>skipTests</tt>.<br /></td> |
| </tr> |
| |
| <tr class="b"> |
| |
| <td><tt><a href="#suiteXmlFiles"><suiteXmlFiles></a></tt></td> |
| |
| <td><tt>List</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>Only supported by the TestNG test provider. The values specified |
| are passed to TestNG as test suite files. The suite files will |
| overwrite the <tt>includes</tt> and <tt>excludes</tt> |
| patterns. The path to the suite file(s) could be relative (test |
| bundle classpath) or an absolute path to xml files outside the test |
| bundle. |
| |
| <div> |
| <pre> |
| <configuration> |
| <suiteXmlFiles> |
| <suiteXmlFile>myTestSuite.xml</suiteXmlFile> |
| </suiteXmlFiles> |
| </configuration> |
| </pre></div><br /></td> |
| </tr> |
| |
| <tr class="a"> |
| |
| <td><tt><a href="#surefireProperties"><surefireProperties></a></tt></td> |
| |
| <td><tt>File</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>(no description)<br /><b>Default value is</b>: <tt>${project.build.directory}/surefire.properties</tt>.<br /></td> |
| </tr> |
| |
| <tr class="b"> |
| |
| <td><tt><a href="#systemProperties"><systemProperties></a></tt></td> |
| |
| <td><tt>Map</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>Additional system properties to set for the forked test JVM.<br /></td> |
| </tr> |
| |
| <tr class="a"> |
| |
| <td><tt><a href="#test"><test></a></tt></td> |
| |
| <td><tt>String</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>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 |
| <tt>**/${test}.java</tt> When used, the <tt>includes</tt> |
| and <tt>excludes</tt> patterns parameters are ignored<br /><b>User property is</b>: <tt>test</tt>.<br /></td> |
| </tr> |
| |
| <tr class="b"> |
| |
| <td><tt><a href="#testClass"><testClass></a></tt></td> |
| |
| <td><tt>String</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>Identifies a single test (suite) class to run. This is useful if |
| you have a single JUnit test suite class defining which tests |
| should be executed. Will be ignored if <tt>test</tt> is |
| specified. Example: |
| |
| <div> |
| <pre> |
| <testClass>foo.bar.FooTest</testClass> |
| </pre></div><br /><b>User property is</b>: <tt>testClass</tt>.<br /></td> |
| </tr> |
| |
| <tr class="a"> |
| |
| <td><tt><a href="#testClassesDirectory"><testClassesDirectory></a></tt></td> |
| |
| <td><tt>File</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>The directory containing generated test classes of the project |
| being tested.<br /><b>User property is</b>: <tt>project.build.outputDirectory</tt>.<br /></td> |
| </tr> |
| |
| <tr class="b"> |
| |
| <td><tt><a href="#testFailureIgnore"><testFailureIgnore></a></tt></td> |
| |
| <td><tt>boolean</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>Set this to true to ignore a failure during testing. Its use is NOT |
| RECOMMENDED, but quite convenient on occasion.<br /><b>Default value is</b>: <tt>false</tt>.<br /><b>User property is</b>: <tt>maven.test.failure.ignore</tt>.<br /></td> |
| </tr> |
| |
| <tr class="a"> |
| |
| <td><tt><a href="#testRuntime"><testRuntime></a></tt></td> |
| |
| <td><tt>String</tt></td> |
| |
| <td><tt>0.19.0</tt></td> |
| |
| <td>How to create the OSGi test runtime. Allowed values are |
| <tt>default</tt> and <tt>p2Installed</tt>. Mode |
| <tt>p2Installed</tt> is <b>EXPERIMENTAL</b> - only works when |
| installing products under test (see below). |
| |
| <ul> |
| |
| <li>In <tt>default</tt> mode, all necessary files to define the |
| test runtime like <tt>config.ini</tt> are generated by tycho. This |
| installation mode has the advantage that the test runtime is |
| minimal (defined by the transitive dependencies of the test bundle |
| plus and the test harness) and existing bundle jars are referenced |
| rather than copied for the installation</li> |
| |
| <li>In <tt>p2Installed</tt> mode, use p2 director to install |
| test bundle, test harness bundles and respective dependencies. This |
| installation mode can be used for integration tests that require a |
| fully p2-provisioned installation. To install a product IU, add it |
| as extra requirement to the test bundle (see example below). Note |
| that this installation mode comes with a certain performance |
| overhead for executing the provisioning operations otherwise not |
| required.</li> |
| </ul> |
| Example configuration which will install product IU under test |
| "example.product.id" using p2: |
| |
| <div> |
| <pre> |
| <plugin> |
| <groupId>org.eclipse.tycho</groupId> |
| <artifactId>tycho-surefire-plugin</artifactId> |
| <version>${tycho-version}</version> |
| <configuration> |
| <testRuntime>p2Installed</testRuntime> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.eclipse.tycho</groupId> |
| <artifactId>target-platform-configuration</artifactId> |
| <version>${tycho-version}</version> |
| <configuration> |
| <dependency-resolution> |
| <extraRequirements> |
| <!-- product IU under test --> |
| <requirement> |
| <type>p2-installable-unit</type> |
| <id>example.product.id</id> |
| <versionRange>0.0.0</versionRange> |
| </requirement> |
| </extraRequirements> |
| </dependency-resolution> |
| </configuration> |
| </plugin> |
| </pre></div><br /><b>Default value is</b>: <tt>default</tt>.<br /></td> |
| </tr> |
| |
| <tr class="b"> |
| |
| <td><tt><a href="#threadCount"><threadCount></a></tt></td> |
| |
| <td><tt>int</tt></td> |
| |
| <td><tt>0.16.0</tt></td> |
| |
| <td>(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.<br /><b>User property is</b>: <tt>threadCount</tt>.<br /></td> |
| </tr> |
| |
| <tr class="a"> |
| |
| <td><tt><a href="#trimStackTrace"><trimStackTrace></a></tt></td> |
| |
| <td><tt>boolean</tt></td> |
| |
| <td><tt>1.3.0</tt></td> |
| |
| <td>When <tt>true</tt>, stack traces are trimmed to only show lines |
| within the test.<br /><b>Default value is</b>: <tt>true</tt>.<br /><b>User property is</b>: <tt>trimStackTrace</tt>.<br /></td> |
| </tr> |
| |
| <tr class="b"> |
| |
| <td><tt><a href="#useJDK"><useJDK></a></tt></td> |
| |
| <td><tt>ToolchainProvider$JDKUsage</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>Which JDK to use for executing tests. Possible values are: |
| <tt>SYSTEM</tt>, <tt>BREE</tt> . |
| |
| <ul> |
| |
| <li>SYSTEM: Use the currently running JVM (or from <a class="externalLink" href="http://maven.apache.org/guides/mini/guide-using-toolchains.html">toolchain</a> |
| if configured in pom.xml)</li> |
| |
| <li>BREE: use MANIFEST header |
| <tt>Bundle-RequiredExecutionEnvironment</tt> to lookup the JDK |
| from <a class="externalLink" href="http://maven.apache.org/guides/mini/guide-using-toolchains.html">toolchains.xml</a>. |
| The value of BREE will be matched against the id of the toolchain |
| elements in toolchains.xml.</li> |
| </ul> |
| Example for BREE: <br /> |
| In <tt>META-INF/MANIFEST.MF</tt>: |
| |
| <div> |
| <pre> |
| Bundle-RequiredExecutionEnvironment: JavaSE-1.7 |
| </pre></div> |
| |
| In toolchains.xml: |
| |
| <div> |
| <pre> |
| <toolchains> |
| <toolchain> |
| <type>jdk</type> |
| <provides> |
| <id>JavaSE-1.7</id> |
| </provides> |
| <configuration> |
| <jdkHome>/path/to/jdk/1.7</jdkHome> |
| </configuration> |
| </toolchain> |
| </toolchains> |
| </pre></div><br /><b>Default value is</b>: <tt>SYSTEM</tt>.<br /></td> |
| </tr> |
| |
| <tr class="a"> |
| |
| <td><tt><a href="#useUIHarness"><useUIHarness></a></tt></td> |
| |
| <td><tt>boolean</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>Run tests using UI (true) or headless (false) test harness.<br /><b>Default value is</b>: <tt>false</tt>.<br /></td> |
| </tr> |
| |
| <tr class="b"> |
| |
| <td><tt><a href="#useUIThread"><useUIThread></a></tt></td> |
| |
| <td><tt>boolean</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>Run tests in UI (true) or background (false) thread. Only applies |
| to UI test harness.<br /><b>Default value is</b>: <tt>true</tt>.<br /></td> |
| </tr> |
| |
| <tr class="a"> |
| |
| <td><tt><a href="#useUnlimitedThreads"><useUnlimitedThreads></a></tt></td> |
| |
| <td><tt>boolean</tt></td> |
| |
| <td><tt>0.16.0</tt></td> |
| |
| <td>(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.<br /><b>Default value is</b>: <tt>false</tt>.<br /><b>User property is</b>: <tt>useUnlimitedThreads</tt>.<br /></td> |
| </tr> |
| |
| <tr class="b"> |
| |
| <td><tt><a href="#work"><work></a></tt></td> |
| |
| <td><tt>File</tt></td> |
| |
| <td><tt>-</tt></td> |
| |
| <td>Root directory (<a class="externalLink" href="http://help.eclipse.org/indigo/topic/org.eclipse.platform.doc.isv/reference/misc/runtime-options.html#osgiinstallarea">osgi.install.area</a>) |
| of the Equinox runtime used to execute tests.<br /><b>Default value is</b>: <tt>${project.build.directory}/work</tt>.<br /></td> |
| </tr> |
| </table> |
| </div> |
| |
| <div class="section"> |
| <h3><a name="Parameter_Details"></a>Parameter Details</h3> |
| |
| <div class="section"> |
| <h4><a name="a.3CappArgLine.3E"></a><b><a name="appArgLine"><appArgLine></a></b></h4> |
| |
| <div>Arbitrary applications arguments to set on the command line.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.lang.String</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3Capplication.3E"></a><b><a name="application"><application></a></b></h4> |
| |
| <div>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. Note that you need to ensure that the bundle which defines |
| the configured application is included in the test runtime.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.lang.String</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CargLine.3E"></a><b><a name="argLine"><argLine></a></b></h4> |
| |
| <div>Arbitrary JVM options to set on the command line.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.lang.String</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>User Property</b>: <tt>tycho.testArgLine</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CbundleStartLevel.3E"></a><b><a name="bundleStartLevel"><bundleStartLevel></a></b></h4> |
| |
| <div>Bundle start level and auto start configuration used by the test |
| runtime. Ignored if <tt>testRuntime</tt> is |
| <tt>p2Installed</tt>. Example: |
| |
| <div> |
| <pre> |
| <bundleStartLevel> |
| <bundle> |
| <id>foo.bar.myplugin</id> |
| <level>6</level> |
| <autoStart>true</autoStart> |
| </bundle> |
| </bundleStartLevel> |
| </pre></div></div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>org.eclipse.sisu.equinox.launching.BundleStartLevel[]</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CdebugPort.3E"></a><b><a name="debugPort"><debugPort></a></b></h4> |
| |
| <div>Set this parameter to suspend the test JVM waiting for a client to |
| open a remote debug session on the specified port.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>int</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>User Property</b>: <tt>debugPort</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CdefaultStartLevel.3E"></a><b><a name="defaultStartLevel"><defaultStartLevel></a></b></h4> |
| |
| <div>The default bundle start level and auto start configuration used by |
| the test runtime for bundles where the start level/auto start is |
| not configured in <tt>bundleStartLevel</tt>. Ignored if |
| <tt>testRuntime</tt> is <tt>p2Installed</tt>. Example: |
| |
| <div> |
| <pre> |
| <defaultStartLevel> |
| <level>6</level> |
| <autoStart>true</autoStart> |
| </defaultStartLevel> |
| </pre></div></div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>org.eclipse.sisu.equinox.launching.BundleStartLevel</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CdeleteOsgiDataDirectory.3E"></a><b><a name="deleteOsgiDataDirectory"><deleteOsgiDataDirectory></a></b></h4> |
| |
| <div>Whether to recursively delete the directory |
| <tt>osgiDataDirectory</tt> before running the tests.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>boolean</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>Default</b>: <tt>true</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3Cdependencies.3E"></a><b><a name="dependencies"><dependencies></a></b></h4> |
| |
| <div>Additional dependencies to be added to the test runtime. Ignored if |
| <tt>testRuntime</tt> is <tt>p2Installed</tt>. Note: This |
| parameter has only limited support for dependencies to artifacts |
| within the reactor. Therefore it is recommended to specify |
| <tt>extraRequirements</tt> on the |
| <tt>target-platform-configuration</tt> plugin instead. Example: |
| |
| <div> |
| <pre> |
| <plugin> |
| <groupId>org.eclipse.tycho</groupId> |
| <artifactId>target-platform-configuration</artifactId> |
| <version>${tycho-version}</version> |
| <configuration> |
| <dependency-resolution> |
| <extraRequirements> |
| <requirement> |
| <type>eclipse-feature</type> |
| <id>example.project.feature</id> |
| <versionRange>0.0.0</versionRange> |
| </requirement> |
| </extraRequirements> |
| </dependency-resolution> |
| </configuration> |
| </plugin> |
| </pre></div> |
| |
| The dependencies specified as <tt>extraRequirements</tt> are - |
| together with the dependencies specified in the |
| <tt>MANIFEST.MF</tt> of the project - transitively resolved against |
| the target platform. The resulting set of bundles is included in |
| the test runtime.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>org.apache.maven.model.Dependency[]</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CenvironmentVariables.3E"></a><b><a name="environmentVariables"><environmentVariables></a></b></h4> |
| |
| <div>Additional environments to set for the forked test JVM.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.util.Map</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CexcludedGroups.3E"></a><b><a name="excludedGroups"><excludedGroups></a></b></h4> |
| |
| <div>(junit47 provider with JUnit4.8+ only) Excluded groups/categories |
| (comma-separated). Any methods/classes/etc with one of the |
| groups/categories specified in this list will specifically not be |
| run. For JUnit, this parameter forces the use of the junit47 |
| provider</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.lang.String</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>User Property</b>: <tt>excludedGroups</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3Cexcludes.3E"></a><b><a name="excludes"><excludes></a></b></h4> |
| |
| <div>List of patterns (separated by commas) used to specify the tests |
| that should be excluded in testing. When not specified and when the |
| <tt>test</tt> parameter is not specified, the default excludes |
| will be <tt>**/*$*</tt> (which excludes all inner classes).</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.util.List</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CexplodedBundles.3E"></a><b><a name="explodedBundles"><explodedBundles></a></b></h4> |
| |
| <div>List of bundles that must be expanded in order to execute the |
| tests. Ignored if <tt>testRuntime</tt> is |
| <tt>p2Installed</tt>.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.lang.String[]</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CfailIfNoTests.3E"></a><b><a name="failIfNoTests"><failIfNoTests></a></b></h4> |
| |
| <div>If set to "false" the test execution will not fail in case there |
| are no tests found.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>boolean</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>User Property</b>: <tt>failIfNoTests</tt></li> |
| |
| <li><b>Default</b>: <tt>true</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CforkedProcessTimeoutInSeconds.3E"></a><b><a name="forkedProcessTimeoutInSeconds"><forkedProcessTimeoutInSeconds></a></b></h4> |
| |
| <div>Kill the forked test process after a certain number of seconds. If |
| set to 0, wait forever for the process, never timing out.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>int</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>User Property</b>: <tt>surefire.timeout</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CframeworkExtensions.3E"></a><b><a name="frameworkExtensions"><frameworkExtensions></a></b></h4> |
| |
| <div>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. Ignored if <tt>testRuntime</tt> is |
| <tt>p2Installed</tt>.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>org.apache.maven.model.Dependency[]</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3Cgroups.3E"></a><b><a name="groups"><groups></a></b></h4> |
| |
| <div>(junit47 provider with JUnit4.8+ only) Groups/categories for this |
| test (comma-separated). Only classes/methods/etc decorated with one |
| of the group/category specified here will be included in test run, |
| if specified. For JUnit, this parameter forces the use of the |
| junit47 provider</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.lang.String</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>User Property</b>: <tt>groups</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3Cincludes.3E"></a><b><a name="includes"><includes></a></b></h4> |
| |
| <div>List of patterns (separated by commas) used to specify the tests |
| that should be included in testing. When not specified and when the |
| <tt>test</tt> parameter is not specified, the default includes |
| will be <tt>**/Test*.java **/*Test.java **/*TestCase.java</tt></div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.util.List</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CosgiDataDirectory.3E"></a><b><a name="osgiDataDirectory"><osgiDataDirectory></a></b></h4> |
| |
| <div><a class="externalLink" href="http://help.eclipse.org/juno/topic/org.eclipse.platform.doc.isv/reference/misc/runtime-options.html#osgiinstancearea">OSGi |
| data directory</a> (<tt>osgi.instance.area</tt>, aka the |
| workspace) of the Equinox runtime used to execute tests.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.io.File</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>Default</b>: <tt>${project.build.directory}/work/data/</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3Cparallel.3E"></a><b><a name="parallel"><parallel></a></b></h4> |
| |
| <div>(JUnit 4.7 provider) Supports values "classes"/"methods"/"both" to |
| run in separate threads, as controlled by threadCount.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>org.eclipse.tycho.surefire.ParallelMode</tt></li> |
| |
| <li><b>Since</b>: <tt>0.16.0</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>User Property</b>: <tt>parallel</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CperCoreThreadCount.3E"></a><b><a name="perCoreThreadCount"><perCoreThreadCount></a></b></h4> |
| |
| <div>(JUnit 4.7 provider) Indicates that threadCount is per cpu core.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>boolean</tt></li> |
| |
| <li><b>Since</b>: <tt>0.16.0</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>User Property</b>: <tt>perCoreThreadCount</tt></li> |
| |
| <li><b>Default</b>: <tt>true</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CpluginArtifacts.3E"></a><b><a name="pluginArtifacts"><pluginArtifacts></a></b></h4> |
| |
| <div>(no description)</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.util.List</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>User Property</b>: <tt>plugin.artifacts</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3Cproduct.3E"></a><b><a name="product"><product></a></b></h4> |
| |
| <div>Eclipse product to be run, i.e. -product parameter passed to test |
| Eclipse runtime.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.lang.String</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CprofileName.3E"></a><b><a name="profileName"><profileName></a></b></h4> |
| |
| <div>p2 <a class="externalLink" href="http://help.eclipse.org/kepler/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Fguide%2Fp2_director.html">profile</a> |
| name of the installation under test. Only relevant if |
| <tt>testRuntime</tt> is <tt>p2Installed</tt>. If tests are |
| installed on top of an already existing installation in |
| <tt>work</tt>, this must match the name of the existing |
| profile.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.lang.String</tt></li> |
| |
| <li><b>Since</b>: <tt>0.19.0</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>Default</b>: <tt>DefaultProfile</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CproviderHint.3E"></a><b><a name="providerHint"><providerHint></a></b></h4> |
| |
| <div>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.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.lang.String</tt></li> |
| |
| <li><b>Since</b>: <tt>0.16.0</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CproviderProperties.3E"></a><b><a name="providerProperties"><providerProperties></a></b></h4> |
| |
| <div>Use this to specify surefire provider-specific properties.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.util.Properties</tt></li> |
| |
| <li><b>Since</b>: <tt>0.16.0</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CredirectTestOutputToFile.3E"></a><b><a name="redirectTestOutputToFile"><redirectTestOutputToFile></a></b></h4> |
| |
| <div>Set this to "true" to redirect the unit test standard output to a |
| file (found in reportsDirectory/testName-output.txt).</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>boolean</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>User Property</b>: <tt>maven.test.redirectTestOutputToFile</tt></li> |
| |
| <li><b>Default</b>: <tt>false</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CreportsDirectory.3E"></a><b><a name="reportsDirectory"><reportsDirectory></a></b></h4> |
| |
| <div>Base directory where all reports are written to.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.io.File</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>Default</b>: <tt>${project.build.directory}/surefire-reports</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CrerunFailingTestsCount.3E"></a><b><a name="rerunFailingTestsCount"><rerunFailingTestsCount></a></b></h4> |
| |
| <div>Flaky tests will re-run until they pass or the number of reruns has |
| been exhausted. See surefire documentation for details. |
| |
| <p>Note: This feature is supported only for JUnit 4.x</p></div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.lang.Integer</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>User Property</b>: <tt>surefire.rerunFailingTestsCount</tt></li> |
| |
| <li><b>Default</b>: <tt>0</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CrunOrder.3E"></a><b><a name="runOrder"><runOrder></a></b></h4> |
| |
| <div>Defines the order the tests will be run in. Supported values are |
| "alphabetical", "reversealphabetical", "random", "hourly" |
| (alphabetical on even hours, reverse alphabetical on odd hours) and |
| "filesystem".</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.lang.String</tt></li> |
| |
| <li><b>Since</b>: <tt>0.19.0</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>Default</b>: <tt>filesystem</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CshowEclipseLog.3E"></a><b><a name="showEclipseLog"><showEclipseLog></a></b></h4> |
| |
| <div>Enables -debug -consolelog for the test OSGi runtime</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>boolean</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>User Property</b>: <tt>tycho.showEclipseLog</tt></li> |
| |
| <li><b>Default</b>: <tt>false</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3Cskip.3E"></a><b><a name="skip"><skip></a></b></h4> |
| |
| <div>Same as <tt>skipTests</tt></div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.lang.Boolean</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>User Property</b>: <tt>maven.test.skip</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CskipAfterFailureCount.3E"></a><b><a name="skipAfterFailureCount"><skipAfterFailureCount></a></b></h4> |
| |
| <div>Skips the remaining tests after the Nth failure or error. See |
| surefire documentation for details.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.lang.Integer</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>User Property</b>: <tt>surefire.skipAfterFailureCount</tt></li> |
| |
| <li><b>Default</b>: <tt>0</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CskipExec.3E"></a><b><a name="skipExec"><skipExec></a></b></h4> |
| |
| <div><b>Deprecated.</b> Use skipTests instead.</div> |
| |
| <div>(no description)</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>boolean</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>User Property</b>: <tt>maven.test.skipExec</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CskipTests.3E"></a><b><a name="skipTests"><skipTests></a></b></h4> |
| |
| <div>Set this to "true" to skip running tests, but still compile them. |
| Its use is NOT RECOMMENDED, but quite convenient on occasion. |
| Default: <tt>false</tt></div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.lang.Boolean</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>User Property</b>: <tt>skipTests</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CsuiteXmlFiles.3E"></a><b><a name="suiteXmlFiles"><suiteXmlFiles></a></b></h4> |
| |
| <div>Only supported by the TestNG test provider. The values specified |
| are passed to TestNG as test suite files. The suite files will |
| overwrite the <tt>includes</tt> and <tt>excludes</tt> |
| patterns. The path to the suite file(s) could be relative (test |
| bundle classpath) or an absolute path to xml files outside the test |
| bundle. |
| |
| <div> |
| <pre> |
| <configuration> |
| <suiteXmlFiles> |
| <suiteXmlFile>myTestSuite.xml</suiteXmlFile> |
| </suiteXmlFiles> |
| </configuration> |
| </pre></div></div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.util.List</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CsurefireProperties.3E"></a><b><a name="surefireProperties"><surefireProperties></a></b></h4> |
| |
| <div>(no description)</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.io.File</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>Default</b>: <tt>${project.build.directory}/surefire.properties</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CsystemProperties.3E"></a><b><a name="systemProperties"><systemProperties></a></b></h4> |
| |
| <div>Additional system properties to set for the forked test JVM.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.util.Map</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3Ctest.3E"></a><b><a name="test"><test></a></b></h4> |
| |
| <div>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 |
| <tt>**/${test}.java</tt> When used, the <tt>includes</tt> |
| and <tt>excludes</tt> patterns parameters are ignored</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.lang.String</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>User Property</b>: <tt>test</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CtestClass.3E"></a><b><a name="testClass"><testClass></a></b></h4> |
| |
| <div>Identifies a single test (suite) class to run. This is useful if |
| you have a single JUnit test suite class defining which tests |
| should be executed. Will be ignored if <tt>test</tt> is |
| specified. Example: |
| |
| <div> |
| <pre> |
| <testClass>foo.bar.FooTest</testClass> |
| </pre></div></div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.lang.String</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>User Property</b>: <tt>testClass</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CtestClassesDirectory.3E"></a><b><a name="testClassesDirectory"><testClassesDirectory></a></b></h4> |
| |
| <div>The directory containing generated test classes of the project |
| being tested.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.io.File</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>User Property</b>: <tt>project.build.outputDirectory</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CtestFailureIgnore.3E"></a><b><a name="testFailureIgnore"><testFailureIgnore></a></b></h4> |
| |
| <div>Set this to true to ignore a failure during testing. Its use is NOT |
| RECOMMENDED, but quite convenient on occasion.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>boolean</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>User Property</b>: <tt>maven.test.failure.ignore</tt></li> |
| |
| <li><b>Default</b>: <tt>false</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CtestRuntime.3E"></a><b><a name="testRuntime"><testRuntime></a></b></h4> |
| |
| <div>How to create the OSGi test runtime. Allowed values are |
| <tt>default</tt> and <tt>p2Installed</tt>. Mode |
| <tt>p2Installed</tt> is <b>EXPERIMENTAL</b> - only works when |
| installing products under test (see below). |
| |
| <ul> |
| |
| <li>In <tt>default</tt> mode, all necessary files to define the |
| test runtime like <tt>config.ini</tt> are generated by tycho. This |
| installation mode has the advantage that the test runtime is |
| minimal (defined by the transitive dependencies of the test bundle |
| plus and the test harness) and existing bundle jars are referenced |
| rather than copied for the installation</li> |
| |
| <li>In <tt>p2Installed</tt> mode, use p2 director to install |
| test bundle, test harness bundles and respective dependencies. This |
| installation mode can be used for integration tests that require a |
| fully p2-provisioned installation. To install a product IU, add it |
| as extra requirement to the test bundle (see example below). Note |
| that this installation mode comes with a certain performance |
| overhead for executing the provisioning operations otherwise not |
| required.</li> |
| </ul> |
| Example configuration which will install product IU under test |
| "example.product.id" using p2: |
| |
| <div> |
| <pre> |
| <plugin> |
| <groupId>org.eclipse.tycho</groupId> |
| <artifactId>tycho-surefire-plugin</artifactId> |
| <version>${tycho-version}</version> |
| <configuration> |
| <testRuntime>p2Installed</testRuntime> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.eclipse.tycho</groupId> |
| <artifactId>target-platform-configuration</artifactId> |
| <version>${tycho-version}</version> |
| <configuration> |
| <dependency-resolution> |
| <extraRequirements> |
| <!-- product IU under test --> |
| <requirement> |
| <type>p2-installable-unit</type> |
| <id>example.product.id</id> |
| <versionRange>0.0.0</versionRange> |
| </requirement> |
| </extraRequirements> |
| </dependency-resolution> |
| </configuration> |
| </plugin> |
| </pre></div></div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.lang.String</tt></li> |
| |
| <li><b>Since</b>: <tt>0.19.0</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>Default</b>: <tt>default</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CthreadCount.3E"></a><b><a name="threadCount"><threadCount></a></b></h4> |
| |
| <div>(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.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>int</tt></li> |
| |
| <li><b>Since</b>: <tt>0.16.0</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>User Property</b>: <tt>threadCount</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CtrimStackTrace.3E"></a><b><a name="trimStackTrace"><trimStackTrace></a></b></h4> |
| |
| <div>When <tt>true</tt>, stack traces are trimmed to only show lines |
| within the test.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>boolean</tt></li> |
| |
| <li><b>Since</b>: <tt>1.3.0</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>User Property</b>: <tt>trimStackTrace</tt></li> |
| |
| <li><b>Default</b>: <tt>true</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CuseJDK.3E"></a><b><a name="useJDK"><useJDK></a></b></h4> |
| |
| <div>Which JDK to use for executing tests. Possible values are: |
| <tt>SYSTEM</tt>, <tt>BREE</tt> . |
| |
| <ul> |
| |
| <li>SYSTEM: Use the currently running JVM (or from <a class="externalLink" href="http://maven.apache.org/guides/mini/guide-using-toolchains.html">toolchain</a> |
| if configured in pom.xml)</li> |
| |
| <li>BREE: use MANIFEST header |
| <tt>Bundle-RequiredExecutionEnvironment</tt> to lookup the JDK |
| from <a class="externalLink" href="http://maven.apache.org/guides/mini/guide-using-toolchains.html">toolchains.xml</a>. |
| The value of BREE will be matched against the id of the toolchain |
| elements in toolchains.xml.</li> |
| </ul> |
| Example for BREE: <br /> |
| In <tt>META-INF/MANIFEST.MF</tt>: |
| |
| <div> |
| <pre> |
| Bundle-RequiredExecutionEnvironment: JavaSE-1.7 |
| </pre></div> |
| |
| In toolchains.xml: |
| |
| <div> |
| <pre> |
| <toolchains> |
| <toolchain> |
| <type>jdk</type> |
| <provides> |
| <id>JavaSE-1.7</id> |
| </provides> |
| <configuration> |
| <jdkHome>/path/to/jdk/1.7</jdkHome> |
| </configuration> |
| </toolchain> |
| </toolchains> |
| </pre></div></div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>org.eclipse.tycho.core.maven.ToolchainProvider$JDKUsage</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>Default</b>: <tt>SYSTEM</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CuseUIHarness.3E"></a><b><a name="useUIHarness"><useUIHarness></a></b></h4> |
| |
| <div>Run tests using UI (true) or headless (false) test harness.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>boolean</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>Default</b>: <tt>false</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CuseUIThread.3E"></a><b><a name="useUIThread"><useUIThread></a></b></h4> |
| |
| <div>Run tests in UI (true) or background (false) thread. Only applies |
| to UI test harness.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>boolean</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>Default</b>: <tt>true</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3CuseUnlimitedThreads.3E"></a><b><a name="useUnlimitedThreads"><useUnlimitedThreads></a></b></h4> |
| |
| <div>(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.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>boolean</tt></li> |
| |
| <li><b>Since</b>: <tt>0.16.0</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>User Property</b>: <tt>useUnlimitedThreads</tt></li> |
| |
| <li><b>Default</b>: <tt>false</tt></li> |
| </ul><hr /></div> |
| <div class="section"> |
| <h4><a name="a.3Cwork.3E"></a><b><a name="work"><work></a></b></h4> |
| |
| <div>Root directory (<a class="externalLink" href="http://help.eclipse.org/indigo/topic/org.eclipse.platform.doc.isv/reference/misc/runtime-options.html#osgiinstallarea">osgi.install.area</a>) |
| of the Equinox runtime used to execute tests.</div> |
| |
| <ul> |
| |
| <li><b>Type</b>: <tt>java.io.File</tt></li> |
| |
| <li><b>Required</b>: <tt>No</tt></li> |
| |
| <li><b>Default</b>: <tt>${project.build.directory}/work</tt></li> |
| </ul> |
| </div></div> |
| </div> |
| |
| |
| </div> |
| </div> |
| </div> |
| <hr/> |
| <footer> |
| <div class="container-fluid"> |
| <div class="row-fluid"> |
| <p>Copyright ©2008–2019 |
| <a href="http://www.eclipse.org/">Eclipse Foundation</a>. |
| All rights reserved.</p> |
| </div> |
| </div> |
| </footer> |
| </body> |
| </html> |