Skip to content
Skip to breadcrumbs
Skip to header menu
Skip to action menu
Skip to quick search
Quick Search
Browse
Pages
Blog
Labels
Attachments
Mail
Advanced
What’s New
Space Directory
Feed Builder
Keyboard Shortcuts
Confluence Gadgets
Log In
Dashboard
Maven User
Copy Page
You are not logged in. Any changes you make will be marked as
anonymous
. You may want to
Log In
if you already have an account. You can also
Sign Up
for a new account.
This page is being edited by
.
Paragraph
Paragraph
Heading 1
Heading 2
Heading 3
Heading 4
Heading 5
Heading 6
Preformatted
Quote
Bold
Italic
Underline
More colours
Strikethrough
Subscript
Superscript
Monospace
Clear Formatting
Bullet list
Numbered list
Outdent
Indent
Align left
Align center
Align right
Link
Table
Insert
Insert Content
Image
Link
Attachment
Symbol
Emoticon
Wiki Markup
Horizontal rule
tinymce.confluence.insert_menu.macro_desc
Info
JIRA Issue
Status
Gallery
Tasklist
Table of Contents
Other Macros
Page Layout
No Layout
Two column (simple)
Two column (simple, left sidebar)
Two column (simple, right sidebar)
Three column (simple)
Two column
Two column (left sidebar)
Two column (right sidebar)
Three column
Three column (left and right sidebars)
Undo
Redo
Find/Replace
Keyboard Shortcuts Help
<h1>Overview</h1> <p>There are currently a number of solutions for testing plugins - both in terms of unit testing and integration testing. This has resulted in a confusing situation where plugins can be tested in multiple different ways, and there are no clear instructions for a new plugin author in how to test their plugins.</p> <p>The objective of this document is to assess all the current approaches, and their positives and negatives, and to provide a baseline for discussion about the various approaches. It will attempt to identify overlap and make proposals to reduce duplication and confusion. It will also attempt to document how to write integration tests for your plugin, depending on your objectives. It will <strong>not</strong> attempt to propose a single-replacement solution - as there are likely good reasons to have different types of testing, and a separation of different techniques into different plugins (though deprecation of some libraries or techniques to reduce duplication may be necessary).</p> <h1>Available Solutions</h1> <h2>Unit Testing</h2> <p><strong>Definition:</strong> This is traditional unit testing - it takes no consideration for the fact that it is a Maven plugin, and tests the code itself.</p> <ol> <li><code>maven-plugin-testing-harness</code>: This library provides assistance for plugin testing by pre-constructing the Plexus components, providing stub objects for Maven functionality such as projects, and populating fields from an XML file that resembles the plugin configuration in the POM.</li> <li>standard JUnit testing: MOJOs written in Java can be tested using JUnit as standard Java objects (possibly using a mock framework to mock the Maven functionality such as projects). For non-Java MOJOs, a corresponding test framework may be used for that language but the same principles apply. Using the <code>PlexusTestCase</code> can also give some of the instantiation assistance of the testing harness without the stubs.</li> </ol> <h2>Integration Testing</h2> <p><strong>Definition:</strong> Integration testing for plugins is checking that a plugin works with the Maven framework libraries in a given situation, and is done before the plugin is verified as installable by Maven. It does not necessarily need to do and end-to-end functional test of a Maven project. In the matrix, "contextual integration testing" refers to integration testing the plugin with the Maven framework without running an entire project, where "complete integration testing" refers to testing entire Maven projects before installation of the plugin.</p> <h2>Functional/System Testing</h2> <p><strong>Definition:</strong> Functional testing for plugins is running an entire Maven build that utilises a given plugin and verifies the output of the build process.</p> <h2>Smoke Testing</h2> <p><strong>Definition:</strong> A form of functional test that would be run in the integration testing phases and checks base functionality for sanity.</p> <h2>Performance Testing</h2> <p><strong>Definition:</strong> Performance testing is a specialised form of acceptance testing.</p> <h1>Requirements</h1> <h2>Key</h2> <table class="confluenceTable"><tbody> <tr> <th class="confluenceTh"><p> CIT </p></th> <td class="confluenceTd"><p> <code>maven-component-it-plugin</code> </p></td> <td class="confluenceTd"><p> <a href="http://svn.apache.org/viewvc/maven/sandbox/trunk/plugins/maven-component-it-plugin/">http://svn.apache.org/viewvc/maven/sandbox/trunk/plugins/maven-component-it-plugin/</a> <br class="atl-forced-newline" /> </p></td> </tr> <tr> <th class="confluenceTh"><p> INV </p></th> <td class="confluenceTd"><p> <code>maven-invoker-plugin</code> </p></td> <td class="confluenceTd"><p> <a href="http://maven.apache.org/plugins/maven-invoker-plugin/">http://maven.apache.org/plugins/maven-invoker-plugin/</a> <br class="atl-forced-newline" /> </p></td> </tr> <tr> <th class="confluenceTh"><p> ITP </p></th> <td class="confluenceTd"><p> <code>maven-it-plugin</code> </p></td> <td class="confluenceTd"><p> <a href="http://svn.apache.org/viewvc/maven/sandbox/trunk/plugins/maven-it-plugin/">http://svn.apache.org/viewvc/maven/sandbox/trunk/plugins/maven-it-plugin/</a> </p></td> </tr> <tr> <th class="confluenceTh"><p> VER </p></th> <td class="confluenceTd"><p> <code>maven-verifier</code> </p></td> <td class="confluenceTd"><p> <a href="http://maven.apache.org/shared/maven-verifier/">http://maven.apache.org/shared/maven-verifier/</a> </p></td> </tr> <tr> <th class="confluenceTh"><p> STY </p></th> <td class="confluenceTd"><p> <code>shitty-maven-plugin</code> </p></td> <td class="confluenceTd"><p> <a href="http://mojo.codehaus.org/shitty-maven-plugin/">http://mojo.codehaus.org/shitty-maven-plugin/</a> </p></td> </tr> <tr> <th class="confluenceTh"><p> PTH </p></th> <td class="confluenceTd"><p> <code>maven-plugin-testing-harness</code> </p></td> <td class="confluenceTd"><p> <a href="http://svn.apache.org/viewvc/maven/plugin-tools/trunk/maven-plugin-testing-harness/">http://svn.apache.org/viewvc/maven/plugin-tools/trunk/maven-plugin-testing-harness/</a> </p></td> </tr> <tr> <th class="confluenceTh"><p> VRP </p></th> <td class="confluenceTd"><p> <code>maven-verifier-plugin</code> (separate from verifier) </p></td> <td class="confluenceTd"><p> <a href="http://maven.apache.org/plugins/maven-verifier-plugin/">http://maven.apache.org/plugins/maven-verifier-plugin/</a> <br class="atl-forced-newline" /> </p></td> </tr> <tr> <th class="confluenceTh"><p> SMJ </p></th> <td class="confluenceTd"><p> Using Surefire alone to test a Mojo </p></td> <td class="confluenceTd"><p> </p></td> </tr> </tbody></table> <table class="confluenceTable"><tbody> <tr> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> explicit support in the current implementation </p></td> </tr> <tr> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> no support in any way </p></td> </tr> <tr> <td class="confluenceTd"><p> <img class="emoticon emoticon-green-star" data-emoticon-name="green-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_green.png" alt="(green star)" title="(green star)" /> </p></td> <td class="confluenceTd"><p> support via Surefire </p></td> </tr> <tr> <td class="confluenceTd"><p> <img class="emoticon emoticon-red-star" data-emoticon-name="red-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_red.png" alt="(red star)" title="(red star)" /> </p></td> <td class="confluenceTd"><p> potential support via Surefire </p></td> </tr> </tbody></table> <h2>Comparison Matrix</h2> <h3>General</h3> <table class="confluenceTable"><tbody> <tr> <th class="confluenceTh"><p> </p></th> <th class="confluenceTh"><p> CIT </p></th> <th class="confluenceTh"><p> INV </p></th> <th class="confluenceTh"><p> ITP </p></th> <th class="confluenceTh"><p> VER </p></th> <th class="confluenceTh"><p> STY </p></th> <th class="confluenceTh"><p> PTH </p></th> <th class="confluenceTh"><p> SMJ </p></th> <th class="confluenceTh"><p> VRP </p></th> </tr> <tr> <td class="confluenceTd"><p> Has a non-snapshot release </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Has a non-alpha/beta release </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Has an archetype </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Can be used for non-Maven testing </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Can be used for Maven App testing </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Can be used for plugin testing </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Can be used for report testing </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> Ability to run an htmlunit test after conclusion of execution </p></td> </tr> </tbody></table> <h3>Unit Testing Specifics</h3> <table class="confluenceTable"><tbody> <tr> <th class="confluenceTh"><p> </p></th> <th class="confluenceTh"><p> PTH </p></th> <th class="confluenceTh"><p> SFR </p></th> </tr> <tr> <td class="confluenceTd"><p> Provides stub factories for creating Maven objects </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Provides alternate remote repository handling </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> </tbody></table> <h3>Integration/System Testing - Setup and Verification</h3> <table class="confluenceTable"><tbody> <tr> <th class="confluenceTh"><p> </p></th> <th class="confluenceTh"><p> CIT </p></th> <th class="confluenceTh"><p> INV </p></th> <th class="confluenceTh"><p> ITP </p></th> <th class="confluenceTh"><p> VER </p></th> <th class="confluenceTh"><p> STY </p></th> <th class="confluenceTh"><p> VRP </p></th> </tr> <tr> <td class="confluenceTd"><p> Able to stage local repository state </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Able to compile custom sources </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Able to add custom dependencies </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Supports pre-build hook </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-green-star" data-emoticon-name="green-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_green.png" alt="(green star)" title="(green star)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Supports verification </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-green-star" data-emoticon-name="green-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_green.png" alt="(green star)" title="(green star)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Supports post-build hook for tearDown </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-green-star" data-emoticon-name="green-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_green.png" alt="(green star)" title="(green star)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-green-star" data-emoticon-name="green-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_green.png" alt="(green star)" title="(green star)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Beanshell support </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Groovy support </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Capture Maven exit code and exceptions </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Supports ANSI output </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-red-star" data-emoticon-name="red-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_red.png" alt="(red star)" title="(red star)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-red-star" data-emoticon-name="red-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_red.png" alt="(red star)" title="(red star)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Can ignore failures </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-green-star" data-emoticon-name="green-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_green.png" alt="(green star)" title="(green star)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-green-star" data-emoticon-name="green-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_green.png" alt="(green star)" title="(green star)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-green-star" data-emoticon-name="green-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_green.png" alt="(green star)" title="(green star)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Can skip execution </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-green-star" data-emoticon-name="green-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_green.png" alt="(green star)" title="(green star)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-green-star" data-emoticon-name="green-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_green.png" alt="(green star)" title="(green star)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-green-star" data-emoticon-name="green-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_green.png" alt="(green star)" title="(green star)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> </tbody></table> <h3>Integration/System Testing - Execution</h3> <p><strong>Note:</strong> CIT measures potential ability to use the CIT Java Wrappers to execute - however this appears to not yet be implemented completely. Uncertain features are therefore marked with <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> .</p> <table class="confluenceTable"><tbody> <tr> <td class="confluenceTd"><p> </p></td> <th class="confluenceTh"><p> CIT </p></th> <th class="confluenceTh"><p> INV </p></th> <th class="confluenceTh"><p> ITP </p></th> <th class="confluenceTh"><p> VER </p></th> <th class="confluenceTh"><p> STY </p></th> </tr> <tr> <td class="confluenceTd"><p> Can stage or use a pre-staged local repository </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Runs with Surefire </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Generates JUnit XML </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-green-star" data-emoticon-name="green-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_green.png" alt="(green star)" title="(green star)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-green-star" data-emoticon-name="green-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_green.png" alt="(green star)" title="(green star)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Can measure coverage using standard techniques </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Can be used for contextual integration testing </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Run tests against multiple versions of Maven </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Run tests against multiple versions of the plugin </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Forked Maven </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Embedded Maven </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Does not pollute source tree on execution </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Cleans up anything stored outside target directory </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> Includes local repository and system temporary directory </p></td> </tr> <tr> <td class="confluenceTd"><p> Uses unique storage location for all execution files </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> This is a concurrency issue if it uses the same location. </p></td> </tr> <tr> <td class="confluenceTd"><p> Isolated from user's environment/settings by default </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> Can be achieved by passing a separate settings file for those that support it. </p></td> </tr> <tr> <td class="confluenceTd"><p> Able to run from the IDE regular test functionality </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Able to run offline (unless plugin requires it) </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Offline by default </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Able to run a single test </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-green-star" data-emoticon-name="green-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_green.png" alt="(green star)" title="(green star)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-green-star" data-emoticon-name="green-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_green.png" alt="(green star)" title="(green star)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Able to run wildcard/regex set of tests </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-green-star" data-emoticon-name="green-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_green.png" alt="(green star)" title="(green star)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-green-star" data-emoticon-name="green-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_green.png" alt="(green star)" title="(green star)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Able to run a suite of tests </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-green-star" data-emoticon-name="green-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_green.png" alt="(green star)" title="(green star)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-green-star" data-emoticon-name="green-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_green.png" alt="(green star)" title="(green star)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Able to run in a separate Maven project </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Able to run in the same Maven project </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Fast execution </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Maven home is configurable </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Configurable Maven settings file </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Configurable individual Maven settings </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Configurable working directory </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Configurable input/output handlers for Maven </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Configurable Maven logger </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Can select which projects to run (include/exclude) </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Able to run Maven in batch mode </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Able to run Maven in debug mode </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Able to inherit shell environment </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Pass goals to run Maven with </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Pass goals to run Maven with in a file </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Interpolate goals to run Maven with </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Pass properties to run Maven with </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Pass properties to run Maven with in a file </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Interpolate properties to run Maven with </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Pass profiles to run Maven with </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Pass profiles to run Maven with in a file </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Pass flags to run Maven with </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Pass flags to run Maven with in a file </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-question" data-emoticon-name="question" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/help_16.png" alt="(question)" title="(question)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Able to run tests in parallel </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-green-star" data-emoticon-name="green-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_green.png" alt="(green star)" title="(green star)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-green-star" data-emoticon-name="green-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_green.png" alt="(green star)" title="(green star)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> </tr> <tr> <td class="confluenceTd"><p> Able to timeout tests run in parallel </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-green-star" data-emoticon-name="green-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_green.png" alt="(green star)" title="(green star)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-cross" data-emoticon-name="cross" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/error.png" alt="(error)" title="(error)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-green-star" data-emoticon-name="green-star" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/star_green.png" alt="(green star)" title="(green star)" /> </p></td> <td class="confluenceTd"><p> <img class="emoticon emoticon-tick" data-emoticon-name="tick" border="0" src="/s/en_GB/3278/15/_/images/icons/emoticons/check.png" alt="(tick)" title="(tick)" /> </p></td> </tr> </tbody></table> <h1>Suggested Use</h1> <table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="title=TODO" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86dGl0bGU9VE9ET30&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"> <p>To be completed once matrix is complete and examples have been generated to decide direction</p></td></tr></table> <h1>Proposals</h1> <table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="title=TODO" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86dGl0bGU9VE9ET30&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"> <p>To be completed based on suggested use and missing needs</p></td></tr></table> <ul> <li>dfabulich: Make maven-verifier share code with maven-invoker. maven-verifier duplicates a number of utilities; its Maven launcher is entirely surpassed by what maven-invoker can do. Verifier should be just a simple library for configuring and verifying maven-invoker runs, intended to be used in JUnit/TestNG.</li> </ul> <h1>Notes</h1> <ul> <li>IT plugin has grown out of date</li> <li>verifier is stable - used in Maven ITs and Surefire ITs</li> <li>invoker is stable</li> <li>plugin testing harness is stable but alpha</li> <li>plugin testing tools/component IT plugin is stable but alpha</li> </ul> <p>John says: "I'm hoping to converge the tools<br /> we're using in the core ITs with those in the maven-component-test-plugin<br /> (used to be maven-plugin-test-plugin), and the maven-invoker-plugin, and<br /> arrive at some single solution (a plugin) that we can use everywhere...but I<br /> haven't even been able to come up with a unified feature list yet."</p> <p>Plugin Testing Tool documentation discusses the need for a different local repository (need could be reviewed by improving local repo mechanism, so keep that functionality separate). Incorporate doc into final solution. Note disagreement with "test suite maintenance" - integration tests != functional tests, and both should be well designed, not easily adapted from users (though easily executing users's tests and helping them construct well designed tests is a better goal). Note: Not much different between component tool and plugin tool</p> <p>Test without installation (c.f. staging and unstaging of plugin - implications for concurrent execution) - to Not pollute the local repository (how about using a timestamped version?</p> <p>Invoker Plugin has a lot of logic in one mojo, and duplicates other plugins</p> <p>IT plugin is now duplicated with invoker</p> <p>Plugin Management Plugin seems roughly equivalent to the component IT plugin but for general use. Could be irrelevant under local repository changes.</p> <p>Test Tools re a library used by component IT - does a couple of file manipulations for tests.</p> <p>Verifier duplicates a lot of utilities</p> <h2>Usages</h2> <h3>Assembly Plugin</h3> <p>Runs within src/it, cleans within there<br /> Functional tests are not included in the POM.</p> <h3>Dependency Plugin</h3> <p>Integration tests are not integrated - set up as separate test projects.</p> <h3>Surefire Plugin</h3> <p>Using the separate project with standard Maven IT practices (these are really functional tests?)</p> <h3>Project Info Reports</h3> <p>Does HTMLUnit tests on the output - manually constructs the mojo like a regular IT, uses plugin testing harness.<br /> Quite slow, though.<br /> Adjustments should be revised.</p> <h3>Other Executors</h3> <p>Some other projects implement Maven executors (eg the release plugin). These should simply be migrated to the invoker (adding in any additional functionality as needed) rather than seeking a unified solution at this point. It is unrelated to testing.</p> <h1>Resources</h1> <p>Discussions:</p> <ul> <li><a href="http://mail-archives.apache.org/mod_mbox/maven-surefire-dev/200711.mbox/%3CPine.WNT.4.64.0711191017450.2484@sfeng02.rf.lan%3E">http://mail-archives.apache.org/mod_mbox/maven-surefire-dev/200711.mbox/%3CPine.WNT.4.64.0711191017450.2484@sfeng02.rf.lan%3E</a></li> <li><a href="http://mail-archives.apache.org/mod_mbox/maven-dev/200704.mbox/%3cf6b307f10704210230pb27cee9ya27a97de7d507f51@mail.gmail.com%3e">http://mail-archives.apache.org/mod_mbox/maven-dev/200704.mbox/%3cf6b307f10704210230pb27cee9ya27a97de7d507f51@mail.gmail.com%3e</a></li> <li><a href="http://mail-archives.apache.org/mod_mbox/maven-dev/200704.mbox/%3c4479b0f70704161430m5693e077r9b26dd8c08217b23@mail.gmail.com%3e">http://mail-archives.apache.org/mod_mbox/maven-dev/200704.mbox/%3c4479b0f70704161430m5693e077r9b26dd8c08217b23@mail.gmail.com%3e</a></li> <li><a href="http://docs.codehaus.org/display/MAVEN/Testing+Strategies">http://docs.codehaus.org/display/MAVEN/Testing+Strategies</a></li> </ul> <p>Plugins and libraries for testing:</p> <ul> <li><a href="http://maven.apache.org/developers/committer-testing-plugins.html">http://maven.apache.org/developers/committer-testing-plugins.html</a></li> <li><a href="http://docs.codehaus.org/display/MAVEN/Maven+Plugin+Harness">http://docs.codehaus.org/display/MAVEN/Maven+Plugin+Harness</a></li> <li><a href="http://svn.apache.org/viewvc/maven/sandbox/trunk/plugins/maven-plugin-management-plugin/">http://svn.apache.org/viewvc/maven/sandbox/trunk/plugins/maven-plugin-management-plugin/</a></li> <li><a href="http://svn.apache.org/viewvc/maven/sandbox/trunk/plugins/maven-component-it-plugin/">http://svn.apache.org/viewvc/maven/sandbox/trunk/plugins/maven-component-it-plugin/</a></li> <li><a href="http://svn.apache.org/viewvc/maven/sandbox/trunk/plugins/maven-it-plugin/">http://svn.apache.org/viewvc/maven/sandbox/trunk/plugins/maven-it-plugin/</a></li> <li><a href="http://maven.apache.org/shared/maven-test-tools/">http://maven.apache.org/shared/maven-test-tools/</a></li> <li><a href="http://maven.apache.org/shared/maven-invoker/">http://maven.apache.org/shared/maven-invoker/</a></li> <li><a href="http://maven.apache.org/shared/maven-verifier/">http://maven.apache.org/shared/maven-verifier/</a></li> <li><a href="http://maven.apache.org/plugins/maven-verifier-plugin/">http://maven.apache.org/plugins/maven-verifier-plugin/</a></li> <li><a href="http://mojo.codehaus.org/shitty-maven-plugin/">http://mojo.codehaus.org/shitty-maven-plugin/</a></li> <li><a href="http://maven.apache.org/shared/maven-plugin-testing-tools/">http://maven.apache.org/shared/maven-plugin-testing-tools/</a></li> </ul>
Please type the word appearing in the picture.
Attachments
Labels
Location
Watch this page
< Edit
Preview >
Loading…
Save
Cancel
Next hint
search
attachments
weblink
advanced