Overview
In this article, we provide instructions to install qTest components for 9.8.3 OnPremise to a single Windows machine. Please read the instructions thoroughly before starting your installations.
To request assistance with installation or obtain the self-install links, complete the OnPremise New Install Form.
Note: If you are not performing a fresh install and are upgrading, use the Upgrade Request Form and reference the OnPremise Upgrades Guide.
About the Command Line Wizard
The qTest 9.8.3 Command Line Wizard is a command line interface application that allows you to configure basic settings for qTest applications in your purchase package.
You should understand these Command Line Wizard characteristics before you begin:
- For each step, the installer will prompt you for a specific input value. After you provide a value, the installer will validate the input. If the value is incorrect, or additional permissions are required, an explicit error message displays so it’s easy to know how the input value should be corrected.
- Default values display in square brackets [ ]. To use the default value, simply hit the Enter key.
- Input values for yes/no questions, should be 'y', 'yes','n', 'no' (ignore case sensitive.) Any value other than those listed will be treated as a 'no.'
- To terminate the configuration at any time without completing it, press Ctrl+C.
Hint: In the event, you cannot start the Command Line Wizard again after terminating the configuration, backup then remove the qtest.config file. Try to start the Command Line Wizard again.
Known Limitations
- The Command Line Wizard and qtestctl do not support the character "$". Therefore, a password, username, or any other value that you would enter in a prompt should not contain "$".
- qtestctl does not support special characters "#" or "?" in your PostgreSQL password
- For Windows users, if you type "Ctrl-C" to terminate the wizard, there will be exceptions shown in the terminal before the wizard stops. You can ignore these exceptions. The configurations are persisted successfully to the qtest.config file.
Before You Begin
Read the following:
- Getting Started with Q4 2019 OnPremise
- Q4 2019 OnPremise Prerequisite Software for Windows
- Recommended Hardware Requirements
Please note that the Command Line Wizard will prompt you for each installation instruction. You will need to perform action items and gather specific connection information before you begin the installation process. Use the application checklist below to ensure you have all the required values readily available.
Ports
Open the Ports for the prerequisite applications and qTest applications you are installing prior to any self/assisted installation or upgrade. You should only open the HTTPS ports if you plan to serve SSL from the application.
PREREQUISITE APPLICATIONS |
|
---|---|
Product | Port |
PostgreSQL | 5432 |
ElasticSearch | 9200 |
Network Drive | 2049 |
LINUX NON-DOCKER AND WINDOWS |
||
---|---|---|
Product | HTTP Port | HTTPS Port |
Manager | 8080 | 8443 |
Sessions | 9080 | 9443 |
Scenario | 6080 | 6443 |
Insights | 10080 | 10443 |
Parameters | 5080 | 5443 |
Pulse | 4080 | 4443 |
Launch | 3080 | 3443 |
IMPORTANT: Suggested application ports are listed above. However, you are allowed to use a port of your choosing for the qTest applications you install.
Application Checklist
You will need to gather the following information for each application prior to beginning the installation and configuration.
PostgreSQL-must be installed prior to qTest Manager, qTest Sessions, qTest Insights, qTest Parameters, qTest Launch application installation
- Hostname or IP address
Note: Do not include the port or protocol in the hostname or IP address, as they will be entered separately in the installer wizard. - Port
- PostgreSQL's User Name
- PostgreSQL's Password
Important: Ensure that the Postgres user is a 'Superuser' who has the following permissions: read, write, create/delete/modify database/tables/schema/functions/sequences/triggers/views - PostgreSQL SSL Certificate: if installing PostgresSQL with SSL connections to encrypt client/server communications for increased security, a root certificate authority (root.crt) must be created and placed in application node servers with read and write permission. This certificate will be asked when configuring the application with Command Line Wizard. PostgreSQL Server setup with SSL article can be found here, or you can use the steps listed in the 9.8.1 Windows Prerequisite article.
ElasticSearch-must be installed prior to qTest Manager application installation
- Hostname or IP address
Note: Do not include the port or protocol in the hostname or IP address, as they will be entered separately in the installer wizard. - Port
SSL Configuration (if applicable)
This information is only needed if you will be deploying with an SSL secured connection. This must also be enabled if you are planning to use the Enhanced Security Options listed below.
- Certificate File-absolute path to the certificate file on this server.
- Please use \ or / in the path. Recommend copying the path from the system file browser. Login user in the terminal also needs to have at least READ permission on the file.
- Private Key-absolute path to the private key file on this server.
- Please use \ or / in the path. Recommend copying the path from the system file browser. Login user in the terminal also needs to have at least READ permission on the file.
- Private Key passphrase
qTest Manager
- Directory where attachments will be stored. This directory should not be under the extracted directory of qtestctl. Login user in the terminal also needs to have at least WRITE permission on the directory.
- Directory where logs will be stored. This directory should not be under the extracted directory of qtestctl. Login user in the terminal also needs to have at least WRITE permission on the directory.
- qTest Managers HTTP or HTTPS Port
- URL to access qTest Manager outside of this machine
qTest Sessions
- Storage Type where you will store qTest Sessions' resource files
Example: disk storage or amazon_s3 - If using amazon_s3 storage, you will need the following:
- Amazon S3's access key
- Amazon S3's secret key
- Amazon S3's bucket name
- Location where you will store resource files
- qTest Sessions HTTP or HTTPS Port
Sessions Enhanced Security Option
During an attempted CSRF attack, user credentials may potentially be inherited and then used to maliciously perform undesirable actions, usually affecting a change of state of server. Please note that this does not result in any data theft. SSL must be enabled.
- qTest Managers HTTP or HTTPS Port
- URL to access qTest Manager outside of this machine
- qTest Sessions HTTP or HTTPS Port
- URL to access qTest Sessions outside of this machine
- External Defect Tracker domain i.e. JIRA
qTest Insights
- qTest Insights HTTP or HTTPS Port
- Directory where reports and dashboards will be stored. This directory should not be under the extracted directory of qtestctl. Login user in the terminal also needs to have at least WRITE permission on the directory.
Insights Enhanced Security Option
During an attempted CSRF attack, user credentials may potentially be inherited and then used to maliciously perform undesirable actions, usually affecting a change of state of server. Please note that this does not result in any data theft.
3 Insights features are impacted by this new security configuration:
- embed reports/dashboard
- shareable URL dashboard
- rapid dashboard
Insights allow users to generate an HTML template and embed it into an external website ex: Confluence. Therefore, the domain of this website need to be included in the Whitelist domain. SSL must be enabled.
- qTest Managers HTTP or HTTPS Port
- URL to access qTest Manager outside of this machine
- qTest Insights HTTP or HTTPS Port
- URL to access qTest Insights outside of this machine
- External Reporting domain i.e. Confluence
qTest Parameters
- qTest Parameters HTTP or HTTPS Port
qTest Launch
- qTest Launch's HTTP or HTTPS Port
- qTest Launch's public URL
qTest Pulse
- qTest Pulse's HTTP or HTTPS Port
- qTest Pulse's public URL
- qTest Pulse log location
- In this version, Pulse will ask for Manager's URL if Manager is not in the app list
Note: This directory should not be under the extracted directory of qtestctl
qTest Scenario
- qTest Scenario's HTTPS Port
- qTest Scenario's public URL
Note: The base URL/domain name of the server that Scenario Server is installed and running. This can be a cloud or local instance and should point to either the reverse proxy that Scenario Server is running behind or directly to the web address of the web server that Scenario Server is installed on (a computer bound to port 80/443 depending on if your traffic is HTTP or HTTPS based).
Download and Start the Installation Package
- Request the installation files through the OnPremise New Install Form which is also available at the top of this article.
- Once the OnPremise New Install Form is completed and submitted, the download link will be emailed to you from our Implementation Team.
- Download and extract the zip file to a folder on the disc.
- Navigate to the extracted folder at \path\to\qtestctl\
- Run the following command to start the installation:
path\to\qtestctl>qtestctl.bat --offline
Note: The installation package may take a few minutes to unzip.
Choose the Applications to Install
Note: A default value is provided for each prompt in the square brackets. You can press Enter to use our default values, or input your values and then press Enter.
Provide a Yes (y) or No (n) response to the following question. Your response provided here will determine which components are installed on this Windows machine.
- qTest Manager [Y] or [N]
- qTest Sessions [Y] or [N]
- qTest Parameters [Y] or [N]
- qTest Insights [Y] or [N]
- qTest Launch [Y] or [N]
- qTest Pulse [Y] or [N]
- qTest Scenario [Y] or [N]
Configure Prerequisite Applications
Configure PostgreSQL Database
You will enter the PostgreSQL Database information you gathered above. You will only need to configure PostgreSQL if you have selected at least one of the following applications:
- Manager
- Sessions
- Parameters
- Insights
- Launch
- Pulse
- Scenario
Example:
Configure ElasticSearch Database
You will enter the ElasticSearch Database information you gathered above for each question.
Configure SSL
This must also be enabled if you are planning to use the Enhanced Security Option listed below.
If you do not want to deploy with SSL, type "n" for Enable secured connection (Y/N) [N]: and move to configure the qTest applications.
If you do want to deploy with SSL, type "y" for Enable secured connection (Y/N) [N]: and input the path to cert and key files :
- cert: absolute path to the certificate file on this server. Please use \ or / in the path. Recommend copying the path from system file browser. Login user in the terminal also needs to have at least READ permission on the file.
- key: absolute path to the private key file on this server. Please use \ or / in the path. Recommend copying the path from system file browser. Login user in the terminal also needs to have at least READ permission on the file.
- passphrase: input passphrase if your key has a passphrase
Configure qTest Applications
The following applications will be configured using the information you gathered above. The prompt will ask you for configuration details based on the applications you chose to install in Step 1.
Note: If you only chose one application in Step 1, then that one application will ask for configurations during the install process.
qTest Manager
Example:
qTest Sessions
If you want to store resource files on a local disk enter "1" or "disk_storage" and input the storage location. The location should be an absolute path to the folder. Please use \ or / in the path. Recommend copying the path from the system file browser.
Example:
If you want to store resource files on Amazon s3 enter "2" or "amazon_s3" and input s3 access key, s3 secret key and bucket name:
Example:
- Note: if you choose to use Amazon S3 as qTest Sessions storage by selecting amazon_s3 for storage type. Refer to this article to learn how to set up Amazon S3 bucket as well to manage access permission.
Enable Sessions Enhanced Security Option
If you would like to enable these security features for Sessions, select Y, and whitelist your domains in the form of regular expression.
qTest Insights
Example:
Enable Insights Enhanced Security Option
If you would like to enable these security features for Insights, select Y, and whitelist your domains in the form of a regular expression.
qTest Parameters
Example:
qTest Launch
Example:
qTest Pulse
Example:
qTest Scenario
Example:
Review the Configuration
After all of the configurations are entered, they are stored in qtest.config file. You can open the file to review the configuration details.
If you need to modify a value, you can re-run the wizard (recommended) or modify the qtest.config file.
To restore the default configurations, delete qtest.config and re-run the wizard.
Example:
Start the Deployment
To start the deployment, execute this command:
qtestctl.bat --offline start
The command will take control of the Command Prompt. Keep it running.
Build Successful
You will receive a Build Successful message once the installation is complete.
Configure qTest Manager to Connect to qTest Applications
Follow this article to configure qTest Manager to connect with the other qTest applications you installed. You should also verify that the applications can be accessed and working properly before performing the final steps.
Stop the Running Process
Navigate back to the Command Prompt and stop the running process (Ctrl + C).
Install qTest Applications as a Windows Service
We highly recommend you enable qTest applications to start automatically when Windows starts. Therefore, you need to install the qTest applications as a Windows service. For more information on installing a qtest service, read the qtestctl as a Service article.
- Open a Command Prompt and navigate to path\to\qtestctl folder.
- Execute the following command to install qTest applications as a Windows service.
path\to\qtestctl>install.bat