Q7 Runner is a headless product for execution of Q7 tests in continuous integration environment. There are two ways to run tests using Q7 Runner
- Via command line, suitable for builds based on ANT/shell scripts.
- Via Q7 Maven Plugin, suitable for Tycho builds
Besides automatic execution one of the great advantages of Q7 Runner is that you don't need to build a complete RCP in order to run Q7 tests – it can create application-under-test using update site(s) and existing RCP, such as Eclipse SDK or Eclipse Platform. Therefore, it is very easy to organize build process in steps like this:
- Build update site with your product
- Execute Q7 tests
- Only if all tests have been passed, build RCPs for all platforms.
We find this approach very handy and use it for our products, including Q7 itself (you can take a look at our build plans here and here). As an execution result, Q7 Runner produces JUnit XML report, which is understood by Continuous Integration servers such as Jenkins/Hudson and Atlassian Bamboo, and human-readable HTML report.
The licensing mechanism for Q7 Runner differs from licensing of Q7 IDE – instead of using floating licenses we use license files, since servers used for continuous integration often don't have an internet access. There are two kinds of license files:
- Node-locked. These license files allow execution of Q7 tests on a single machine under a single user.
- AUT-locked. These license files can be generated by request for open-source projects. Thus anyone can checkout the source code, build product and run tests.
If Q7 runner is executed via maven plugin, then it will be downloaded by Maven automatically. Otherwise, the latest version of Q7 runner can be downloaded from http://xored.com/q7/1.1/products/q7.runner-1.1.zip.
How to get Node ID and Q7 Runner license file?
To get the Node ID of current machine, download Q7 Runner and execute the following command line:
The output of this command should look like this:
Email Node ID to email@example.com and we will respond you with evaluation license file.