JetBrains TeamCity Integration

JetBrains TeamCity is a continuous integration server that can build, test, and release software. The Squish Runner plugin provides a seamless Squish integration with TeamCity. It allows adding one or multiple Squish Runner build steps to a Build Configuration, and executing Squish GUI tests on designated local or remote agents. After execution is done, the build is set as success if all tests pass. Otherwise, the build is set to failed. Additionally, artifacts for Squish tests are stored to allow efficient defect troubleshooting.

Squish Runner Plugin Installation

The plugin is available from: https://resources.qt.io/hubfs/Squish/squish-teamcity-latest.zip.

To install the Squish Runner plugin, shut down the TeamCity server and copy the zip archive with the plugin to TeamCity Data Directory/plugins directory. Finally start the TeamCity server to automatically unpack and process the plugin files.

To check where TeamCity Data Directory is located, go to Administration > Global Settings.

To verify that the plugin is installed, go to Administration and choose Plugins List. The Squish Runner plugin should be listed in the External Plugins list.

Build Step Definition

To specify build Configuration Steps, select the Build Step option and click the Add build step button. From the Runner type drop down list, choose Squish Runner. You can add multiple Squish Runner build steps to one build configuration.

{}

Build Step Configuration

Next, configure the build step executed by the plugin. In the Squish Installation section, Installation root field, specify the path to the Squish directory. Users can enter the path manually or use a previously specified value from Build Parameters.

In the Tests section, specify test cases for execution by Squish. The mandatory setting is Test suite, where you must specify the test suite name with a full path. If you only specify Test suite and leave the Test cases field empty, all test cases from the given test suite will be executed. To execute only the specified test cases from the test suite, specify them in Test cases field. Single or multiple values (separated by comma) are accepted.

In the Settings section, you can specify additional parameters for executing GUI automated tests:

  • In the Host field, specify the host where squishserver is running. If you omit the value, the default value localhost is used.
  • In the Port field, specify port number where squishserver is listening. If you omit the value, the default port number 4322 is used.
  • The Environment variables field can hold environment variables for both squishrunner and squishserver. You can add multiple environment variables separated by a space.
  • Select the Start/stop squishserver checkbox to start squishserver on the host where the agent is running, listening on the port configured in the build step. When the execution of tests is done, squishserver is stopped. Starting and stopping squishserver is not supported on agents running on Windows platform.

Build Execution

Squish Runner tests are executed as a part of a whole build. If any test cases fail due to a FAIL or an ERROR, a build is marked as failed. In Build log, users can check which Squish Runner step is causing the whole build failure. All reports are stored in the Artifacts tab, including Results XML files, HTML Reports and screenshots taken by Squish in case of FAIL or ERROR.

© 2023 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners.
The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation.
Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.