| <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> |
| <modelVersion>4.0.0</modelVersion> |
| <!-- Set artifact id according to a Q7 project name --> |
| <artifactId>q7tests</artifactId> |
| <!-- Set group id based on application under test name --> |
| <groupId>projectName</groupId> |
| <version>1.5.2-SNAPSHOT</version> |
| <!-- Q7 Maven Plugin provides this packaging type --> |
| <packaging>q7test</packaging> |
| |
| <!-- Q7 Maven Plugin and Q7 Runner are hosted in this repository --> |
| <pluginRepositories> |
| <pluginRepository> |
| <id>q7-releases</id> |
| <name>Xored Q7</name> |
| <url>http://maven.xored.com/nexus/content/repositories/q7-releases/</url> |
| </pluginRepository> |
| </pluginRepositories> |
| |
| <!-- |
| If Q7 tests are planned to be run on an update site, |
| Q7 Maven Plugin can download Eclipse SDK of required version |
| for current platform from repository below (to see |
| an up-to-date list of available versions visit this link: |
| http://maven.xored.com/nexus/content/repositories/q7-releases/org/eclipse/sdk/ |
| --> |
| |
| <!-- |
| <repositories> |
| <repository> |
| <id>q7-releases</id> |
| <name>Xored Q7</name> |
| <url>http://maven.xored.com/nexus/content/repositories/q7-releases/</url> |
| </repository> |
| </repositories> |
| --> |
| |
| <!-- The main part of Q7 Maven plugin --> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.eclipse.rcptt</groupId> |
| <artifactId>q7-maven-plugin</artifactId> |
| <version>1.3.11</version> |
| <extensions>true</extensions> |
| <configuration> |
| |
| <!-- This element describes where to get an AUT to run tests --> |
| <aut> |
| <!-- There are several ways to specify AUT location, |
| Uncomment an element corresponding to a most suitable way |
| --> |
| |
| <!-- Use AUT from current build results. [classifier] will be |
| automatically replaced according to the current platform --> |
| <!-- |
| <explicit>${project.basedir}/../product/target/products/org.eclipse.ui.examples.rcp.browser.product-[classifier].zip</explicit> |
| --> |
| |
| <!-- Or specify a path to AUT folder --> |
| <!-- |
| <explicit>/Users/q7user/path/to/aut</explicit> |
| --> |
| |
| <!-- As well AUT can be downloaded from HTTP --> |
| <!-- |
| <explicit>http://server/path/aut-archive.zip</explicit> |
| --> |
| |
| <!-- AUT can be downloaded automatically from Maven repository --> |
| <!-- |
| <groupId>org.eclipse</groupId> |
| <artifactId>sdk</artifactId> |
| <version>3.7.2</version> |
| --> |
| |
| <!-- AUT Artifact classifier is based on a current platform: |
| Windows 32bit: win32.win32.x86 |
| Windows 64bit: win32.win32.x86_64 |
| Linux 32bit: linux.gtk.x86 |
| Linux 64bit: linux.gtk.x86_64 |
| Mac OS X 64bit: macosx.coca.x86_64 |
| --> |
| |
| <!-- Optionally it is possible to specify extra features to |
| be installed into AUT, this is useful when Q7 tests |
| need to be executed using a repository assembled as |
| part of current Maven build. |
| |
| Inside an 'injection element it is possible to specify a list of |
| features/plugins to install, if nothing is set, all available |
| features will be installed. |
| feature.group suffix is required by p2, |
| otherwise it searches for a plugin with given id |
| |
| Currently Q7 Runner does not install requirements automatically, |
| so the full list of features to install must be explicitly set |
| --> |
| |
| |
| |
| <injections> |
| <!-- This injection will include all available features from |
| repository assembled during current build --> |
| <!-- |
| <injection> |
| <site>${project.baseUri}../../../repository/target/repository</site> |
| </injection> |
| --> |
| |
| <!-- This injection will install a single feature from indigo --> |
| <!-- |
| <injection> |
| <site>http://download.eclipse.org/releases/indigo/</site> |
| <features> |
| <feature>org.eclipse.emf.transaction.feature.group</feature> |
| </features> |
| </injection> |
| --> |
| </injections> |
| |
| <!-- additional AUT args (besides taken in its ini-file) can be set |
| Use one argument per <arg> element --> |
| <!-- |
| <args> |
| <arg>-ws</arg> |
| <arg>$${target.ws}</arg> |
| </args> |
| --> |
| <!-- optional VM args can be set too --> |
| <!-- |
| <vmArgs> |
| <vmArg>-Xmx768m</vmArg> |
| <vmArg>-XX:MaxPermSize=256m</vmArg> |
| </vmArgs> |
| --> |
| </aut> |
| |
| <q7> |
| <!-- Q7 Runner location can be set using the same methods |
| as AUT location: |
| --> |
| <!-- |
| <explicit>/path/to/q7/runner</explicit> |
| --> |
| |
| <!-- but the most convenient way is to just set its version, |
| Q7 maven plugin will automatically set right groupId and |
| artifact ID and will download Q7 Runner from Xored Maven Repo --> |
| <version>1.3.11</version> |
| |
| <!-- |
| clientId is user or organization name to charge executions |
| clientSecret can be retrieved at http://q7.xored.com/settings/balance |
| --> |
| <clientId>userOrOrganization</clientId> |
| <clientSecret>secret hash string</clientSecret> |
| </q7> |
| |
| <!-- Test options for Q7 Runner, most popular options listed here. |
| Full list of options is available at: |
| http://help.xored.com/display/Q7/Q7+Runner#Q7Runner-Q7RuntimeoptionsruntimeOptions |
| --> |
| <testOptions> |
| <!-- Timeout for all tests, in seconds --> |
| <execTimeout>3600</execTimeout> |
| <!-- Timeout for a single test case, in seconds --> |
| <testExecTimeout>300</testExecTimeout> |
| |
| <!-- When set to true, in case of test failure |
| AUT will be restarted. This significantly |
| slows down execution, but may be useful |
| for some test suites --> |
| <!-- |
| <restartAUTOnFailure>true</restartAUTOnFailure> |
| --> |
| </testOptions> |
| |
| <!-- By default Q7 Runner runs tests from a project directory, |
| but in some cases it might be required to import additional |
| projects into runner's workspace --> |
| <!-- |
| <projects> |
| <project>${project.basedir}/../project</project> |
| </projects> |
| --> |
| |
| <!-- By default Q7 Runner runs all tests from workspace, |
| but it is possible to pass test suite names, so it |
| will execute only test suites from given project. --> |
| |
| <!-- |
| <suites> |
| <suite>FastSanityCheckTestSuite</suite> |
| </suites> |
| --> |
| |
| <!-- Sometimes it might be useful to skip a test case |
| (for instance because of some unresolved bug). Q7 |
| can skip tests based on its tags. By default Q7 skips |
| tests with tag 'skipExecution' (this value has been |
| chosen because on one hand it is descriptive enough, |
| on another hand it is unlikely that this tag name |
| will collide with some user's tag) |
| --> |
| <!-- |
| <skipTags> |
| <skipTag>linuxOnly</skipTag> |
| </skipTags> |
| --> |
| |
| <!-- By default Q7 generates a single HTML report file with |
| all tests, but it is possible to generate one file per |
| test --> |
| <!-- |
| <splitHtmlReport>true</splitHtmlReport> |
| --> |
| </configuration> |
| </plugin> |
| </plugins> |
| </build> |
| |
| </project> |