This eggPlant integration includes a command line tool capable of kicking off eggPlant scripts on your local machine and reporting test results in JUnit-compatible format back to qTest Manager. Automation Test Cases and Test Runs are automatically created in qTest Manager.
This integration follows the Automation Integration V1 model to pass in execution results to qTest Manager Test Execution. For more details, see the article Automation Integration V1.
- eggPlant Functional and the eggPlant Connector must be installed on the same machine for the eggPlant Connector to kick off eggPlant scripts.
- The integration tool works with eggPlant Functional v16.01.
- The tool works best on a Windows machine.
- JDK 7+ is required to be installed on your machine.
See the instructions below to setup and use this integration.
Enable Automation Integration Settings in qTest
To receive test results submitted by eggPlant Connector, you need to activate the Automation Integration feature in your qTest Manager project.
- Access your qTest Manager project, and then click the Gear icon and select Automation Settings.
- Switch on the Activation Status.
- Map the automation execution results with corresponding qTest Manager values. The eggPlant Connector collects test results which have been converted to JUnit-compatible format. Execution results in JUnit format include:
- Click the Save button.
Download and Configure eggPlant Integration Package
- Download the eggPlant Integration Package from the qTest Resources page to set it up on the same machine where your eggPlant tests are executed.
- After downloading the appropriate package that is compatible with your qTest version, extract the package and access to the extracted directory:
- In the extracted directory above, you can find the config.properties file, which stores all available configurations. You need to modify the keys in the file as described in the table below.
|qtest.url||Yes||The URL to access your qTest instance|
|qtest.tokenstring||Yes||The token to login to your qTest instance. You can get the token from the qTest Resources page
|qtest.project.id||Yes||ID of the qTest project to which you want to report test execution results.. You can get the project ID from its URL or on the Site Administration Projects page:
When test results are submitted to qTest Manager, Test Runs are automatically created in qTest if they do not already exist.
You can specify a qTest Manager Test Suite where the submitted Test Runs will be located using its ID or PID.
If it is omitted, one Test Suite is created per execution date to contain the Test Runs. If eggPlant tests are executed multiple times in one day, all Test Runs are located in the same Test Suite of that day. The Test Suite is named as eggPlant yyyy-mm-dd, in which yyyy-mm-dd is the execution date, and it is located under the Test Execution tree's root.
Specify an execution date in the format yyyy-mm-dd which will be used in the default Test Suite name.
If it is omitted, qTest Manager will use the test log submitted date to create the Test Suite.
When test results are submitted to qTest Manager, Test Cases are automatically created in qTest Manager if they do not already exist.
All eggPlant Test Cases are located under the module eggPlant Automation located under the Test Design tree's root.
If you specify a parent module using its PID or ID, the eggPlant Automation module will be created under the parent module.
|eggplant.results.directory||Yes||Directories in which test results are located. You can specify multiple directories, separated by | character. Use / in the directory paths.
You can use wildcards to specify result directories as below:
You can specify an eggPlant command line to kick off eggPlant scripts before collecting the test logs.
If only collect the existing test logs and submit them to qTest Manager, please leave this key empty.
If Yes, each <testcase> tags in JUnit XML test logs is created as one Test Case in qTest Manager.
|submit.latest||No||If Yes, only the latest test logs are submitted. Otherwise, all existing test logs which have not been reported to qTest Manager will be submitted.|
|submit.automatedstepresults||No||By default the key’s value is Yes.
- eggPlant Connector only collects test logs in the Result directory which is located under the test suite directory. In a future release, you will be able to specify your custom test log directories
Execute eggPlant Connector
Via Command Line
After you have completed modifying the config.properties file, you are ready to execute the tool.
- Open the console and access the extracted folder of the downloaded package. Execute this command:
java -jar eggplant-connector-1.0.0.jar
- Submission progress is logged in the console so you can monitor it.
- After the submission is complete, you can access your qTest Manager project to verify if Test Cases and Test Runs have been created.
Via qTest UI
After you have completed modifying the config.properties file, you are ready to execute the tool. With qTest's shell agent, you'll be able to trigger these tests directly from qTest Manager. First, setup your Automation Host on your machine or server. Once that is done, create a Shell (for Mac) or Batch (for Windows) file. Within that file, simply add your command and save the file:
The last step is to create and configure your Shell Agent. Since our shell agent will be running the JAR file, there is no need to customize a script that will create the tests and update the results. All of this is out of the box and if you need to change the scripts to be run or the location of the results in qTest Manager, update the config file as described at the beginning of this article. Below is a screenshot of what your agent directory should look like:
This agent can now be scheduled and/or ran from qTest Launch.
- Run this command to view available arguments of the eggPlant Connector.
java -jar eggplant-connector-1.0.0.jar --help
- Instead of using the default config.properties files, you can specify another file which contains the configurations by using argument -conf or --configFile
- Configurations can be defined in either the configuration file or via command line arguments. If the same configuration is defined in both places, the eggPlant Connector will use the configuration in the command line arguments.
- eggPlant Connector creates qtest.info file in the eggPlant Results directory. Please do not remove it or duplicate test logs will be created in qTest Manager.