Follow

Installation Document for QMetry Test Management v7.3 - Windows OS

  

Introduction

These instructions have been updated for QMetry 7.

Thank you for choosing QMetry as your Test Management Tool. This guide will help you walk through the installation steps and get your QMetry system up and running on Windows Server Operating System. 

This guide, and the accompanying software and other documentation are protected by U.S. and international copyright laws, and may be used only in accordance with the accompanying license agreement. Features of the software, and of other products and services of QMetry, may be covered by one or more of the following pending patents all rights reserved. The absence of a trademark from this list does not constitute a waiver of QMetry’s intellectual property rights concerning that trademark. All other company, brand and product names may be trademarks or registered trademarks of their respective holders. QMetry disclaims any responsibility for specifying which marks are owned by which companies or which organizations. QMetry provides links to external third-party Web sites to help you find supplemental information. Site content and availability may change without notice. QMetry makes no representations or warranties whatsoever as to site content or availability. © 2008 - 2017 QMetry. All rights reserved. 

Pre-requisites

Hardware Requirements

We offer support for new installations on the operating systems and architectures mentioned below:

Component Minimum Recommended
Operating System

Windows Server 2012 Standard

Windows Server 2012 Standard

Memory 8 GB RAM 16 GB RAM
Disk Space 250 GB HDD 500 GB HDD
CPU 4 8
Processor 2.4 GHz or better 3.46 GHz
Disk I/O  200MB/s  400MB/s 

Software Requirements

  • JDK must be installed. The version of the JDK must be 1.7(To verify, run command: java -version on server)
  • If not installed, then you can download and install required JDK from Java SE Development Kit 7 
  • Then configure JAVA_HOME and PATH environment variables accordingly.

 

Set JAVA_HOME, CLASSPATH and PATH on Windows

  • Go to Control Panel --> System --> Advanced System Settings
  • Go to Advanced --> Environment Variables
  • Click New on System Variable section
    • Add Variable Name : JAVA_HOME
    • Add Variable value: C:\Program Files\Java\jdk1.7.0_x  (Note: Add the path of your java install directory)
    • Click on OK
  • Click New on System Variable section
    • Add Variable Name : CLASSPATH
    • Variable value: C:\Program Files\Java\jdk1.7.0_21\lib  (Note: Add the path of your java install directory)
    • Click on OK
  • In the same section, find a variable named "Path", click on Edit
    • At the end of its value add the value given below, without the quotes
    • ;C:\Program Files\Java\jdk1.7.0_21\bin   (Note: Append the path of your java install directory)
  • Launch CMD, run command: java -version to verify the setup.

Set Java Cryptography Extension (JCE)

Installation Guide

This guide describes step by step QMetry installation on Windows server.

Before You Begin 

  • QMetry Version: 7.3.06.14
  • QMetry should be running on a dedicated server.
  • QMetry installation will install all of the services it needs. 
  • Verify that your server meets the requirements specified in Pre-requisites
  •  QMetry is not supported on any other version of Payara. If you already have  Payara 4.1 installed be aware that if there are other applications already running on the Payara server performance issues might arise. We recommend a separate Payara server for QMetry.

  • If you have already installed MySQL Database Server, then it must be MySQL 5.6 (Note: For existing MySQL, if there are other application databases installed, then performance issues might arise)
  • Make sure no java or mysql process already running on server before starting installation
    • If found any services already running, kill them from task manager.

Note: Infostretch regularly updates our components version after new versions are released. We do not expect new versions to cause any problems; however, it is important to ensure stability and quality. If a new version of a components is available and you would like to use it please contact us at support@qmetry.zendesk.com first. We will investigate to make sure that you will encounter no problems.

Installing QMetry

  • Download qmetry.zip (Reference URL : http://downloads.qmetry.com/QMetry_6/Server%20Install/Windows/qmetry.zip)
  • It contains database related files i.e. qmetry.sql & emailnotification.sql.
  • It contains applications related files i.e. eclipselink.zip, qmetry.ear & EmailNotificationService.war

Installing MySQL 5.6  

  1. Go to http://dev.mysql.com/downloads/mysql/
  2. Click on link : Looking for previous GA versions?
  3. Select Platform: Microsoft Windows and version: 5.6.x from the drop-downs.
  4. Click on Download for "Windows (x86, 64-bit), ZIP Archive"
  5. Click on "No thanks, just start my download." link available at the bottom of the page. This will start the download process.
  6. Once completed, you can transfer downloaded file, "mysql-5.6.x-winx64.zip" on your server.
  7. You can follow below steps to install MySQL 5.6 on your server and run commands given for each step:
    1. Extract the file:
      1. Make sure that you are logged in as a user with administrator privileges.
      2. Choose an installation location. Traditionally, the MySQL server is installed in C:\mysql
      3. Extract the archive to the desired install directory and rename "mysql-5.6.x-winx64" to "mysql". For example, C:\mysql
    2. Setup an option file:
      1. Rename existing my-default.ini to my.ini under C:\mysql\ directory 
      2. Open it and Check below values under [mysqld] section and correct if any required
        1. [mysqld]
        2. port = 3306

        3. basedir = C:\mysql

        4. datadir = C:\mysql\data
        5. skip-external-locking
        6. lower_case_table_names=1
        7. max_allowed_packet = 512M
        8. innodb_thread_concurrency=10
        9. query_cache_limit=1073741824
        10. query_cache_type =1
        11. table_definition_cache =2000
        12. table_open_cache =2000
        13. thread_cache_size =200
        14. thread_concurrency =200
        15. group_concat_max_len = 15360
        16. innodb_autoinc_lock_mode=2
        17. binlog_format=row
        18. transaction-isolation=READ-COMMITTED
      3. Note that Windows path names are specified in option files using (forward) slashes rather than backslashes. If you do use backslashes, double them.

    3. Installing MySQL as a Windows Service:
      1. Run this command: cmd> "C:\mysql\bin\mysqld" --install mysql --defaults-file=C:\mysql\my.ini
      2. Add C:\mysql\bin to PATH environment variable
      3. Then run command: net start mysql to start service
  8. To reset MySQL root password, Run command: cmd>C:\mysql\bin\mysqladmin -u root password "qmetry"
  9. QMetry Database Installation:
    1. Get the downloaded "qmetry.sql" file and put it under C:\
    2. Get the downloaded "emailnotification.sql" file and put it under C:\
    3. Restore QMetry Database: cmd>C:\mysql\bin\mysql -uroot -pqmetry < C:\qmetry.sql
    4. Restore Email Notification Service Database: cmd>C:\mysql\bin\mysql -uroot -pqmetry < C:\emailnotification.sql
    5. Login to database and update domain name as follows:
      1. cmd>C:\mysql\bin\mysql -uroot -pqmetry
      2. mysql> USE qmetry;
      3. mysql> UPDATE client SET domain='<your-server-ip-or-domain>:8080' limit 1;
      4. mysql> \q

Installing Payara Server 4.1

  1. Go to http://www.payara.fish/downloads 
  2. Download "Payara Server Full 171" and Transfer it to server at C:\ drive. 
  3. Before installing GlassFish Application Server: 
    1. Make sure Java installed and configured properly as mentioned in Set JAVA_HOME and PATH on windows
    2. Free Ports Required: 4848 (Administration Console), 8080 (HTTP), 8081 (HTTPS)
    3. For an example, you can check this by running command: netstat -a -n -o | find ":4848"
  4. Go to C:\ drive and Unzip the file: payara-4.1.1.171.0.1.zip
    Payara Server 4.1 will be extracted into a new "payara41" directory under your current directory
  5. Go to http://dev.mysql.com/downloads/connector/j/ and select platform: "Platform Independent"
    1. Click on Download for "Platform Independent (Architecture Independent), ZIP Archive"
    2. Click on "No thanks, just start my download." link available at the bottom of the page. This will start the download process.
    3. Extract "mysql-connector-java-5.1.xx.zip"
    4. Transfer "mysql-connector-java-5.1.xx-bin.jar" to C:\payara41\glassfish\lib\ on server 
  6. Execute below commands in sequence:
    1. cmd>c:\payara41\bin\asadmin start-domain
    2. cmd>c:\payara41\bin\asadmin --port 4848 change-admin-password   [default username: admin | default password is blank]
    3. cmd>c:\payara41\bin\asadmin --port 4848 enable-secure-admin
    4. cmd>c:\payara41\bin\asadmin stop-domain
    5. cmd>cd c:\payara41\glassfish\domains\domain1\osgi-cache
    6. cmd>rmdir /s /q felix
  7. Get the downloaded "eclipselink.zip" file
    1. Transfer it to C:\ drive and Unzip the file: eclipselink.zip
    2. cmd>copy /Y c:\eclipselink\*.jar c:\payara41\glassfish\modules\
    3. cmd>c:\payara41\bin\asadmin start-domain
  8. Launch web browser and Login to Administration Console : http://<your-server-ip>:4848 
  9. Go to Configurations > server-config > Logger Settings
    1. Set Maximum History Files = 20
    2. Click on Save
  10. Go to Configurations > server-config > JVM Settings > JVM Options
    1. Click on "Add JVM Option" and add or update below values
      1. -Duser.timezone=UTC
      2. -server     (Replace -client with -server value)
      3. -Xmx2048m  (Replace -Xmx512m with this new value)
      4. -Xms1024m
      5. -XX:PermSize=200m
      6. -XX:MaxPermSize=512m  (Replace -XX:MaxPermSize=192m with this new value)
    2. Click on Save
  11. Restart Payara server. To restart Payara server
    • cmd>c:\payara41\bin\asadmin stop-domain 
    • cmd>c:\payara41\bin\asadmin start-domain

Moving Database resources out of the Application context

  • Get the values of hostname, port, database name, username, password for Database connection.
  • run command : C:\payara41\bin\asadmin
Script for generating Connection Pool note
  • run command : create-jdbc-connection-pool --driverclassname com.mysql.jdbc.Driver --restype java.sql.Driver --property user=<username>:password=<password>:url="jdbc\:mysql\://<hostname>\:<port>/<database name>?zeroDateTimeBehavior\=convertToNull&autoReconnect\=true" qmetry-connection-pool
  • Example : Values of <username> is root , <password> is qmetry , <hostname> is localhost , <port> is 3306 & <database name> is qmetry then your command will be :
    • create-jdbc-connection-pool --driverclassname com.mysql.jdbc.Driver --restype java.sql.Driver --property user=root:password=qmetry:url="jdbc\:mysql\://localhost\:3306/qmetry?zeroDateTimeBehavior\=convertToNull&autoReconnect\=true" qmetry-connection-pool

NOTE : Update the script by checking the values in glassfish-resources.xml

Expected Output : Command create-jdbc-connection-pool executed successfully.

Script to check the connection note
  • run command : ping-connection-pool qmetry-connection-pool

Expected Output : Command ping-connection-pool executed successfully.

Script for generating datasource note
  • run command : create-jdbc-resource --connectionpoolid qmetry-connection-pool jdbc/qmetry-ds

Expected Output : JDBC resource jdbc/qmetry-ds created successfully. Command create-jdbc-resource executed successfully.

Verification through Payara administration console
  • Launch web browser and Login to Administration Console : http://<your-server-ip>:4848 
  • Go to Resources>>JDBC>>JDBC Connection Pools
  • Click on qmetry-connection-pool>>Additional Properties
  • Check the respective values.

Deploying QMetry & Email Notification Service 

  • Get the downloaded "qmetry.ear" and "EmailNotificationService.war" files and put it under C:\ drive.
  • Run below commands:
    • cmd>c:\payara41\bin\asadmin deploy c:\qmetry.ear   (Note: Enter admin username and password)
    • cmd>c:\payara41\bin\asadmin deploy c:\EmailNotificationService.war   (Note: Enter admin username and password)
  • To configure attachments, follow below steps:
    • Create "attachments" folder under C:\ drive
    • Go to C:\payara41\glassfish\domains\domain1\applications\qmetry\qmetryEJB-<QMetry Version>_jar\
    • Open "dbspecialcharacters.properties" and update nfs_path=c:\\attachments\\
    • Save the configuration file

Update Email Notification URL

  • Update client table with the Email Notification URL by running below query :
    • Case-1 : If QMetry is running on port 80, then run query : UPDATE client set EmailDomainURL = 'http://[QMetry_URL OR IP]/EmailNotificationService' ; 
    • Case-2 : If QMetry is running on port 8080 , then run query : UPDATE client set EmailDomainURL = 'http://[QMetry_URL OR IP]:8080/EmailNotificationService' ; 
  • NOTE : Don't use backward slash at the end of the email_notification_url.

Steps to apply license file

Once you have received your license file from support, follow the below steps to apply it to your server:

  • Place license file "license.key" at "c:\payara41\glassfish\domains\domain1\config"
  • Restart Payara server. To restart Payara server: 
    • cmd>c:\payara41\bin\asadmin stop-domain 
    • cmd>c:\payara41\bin\asadmin start-domain

Configuring SSL/TLS in Glassfish & QMetry1

Default configuration in Glassfish & changes required in QMetry configuration

By default, http-listener-2 is configured in Glassfish in server-config. The port set is 8181 as shown in the below image. 



If one tries to access the QMetry application, e.g. URL https://localhost:8181/qmetry , then QMetry login page opens as below .

When you enter the credentials, an error message “Invalid Client” pop's up, as highlighted in below mentioned image.

To solve this issue, the domain URL has to be set in the client table in QMetry database as follow :

Login to database and update domain name as follows: 

    • cmd>C:\mysql\bin\mysql -uroot -pqmetry
    • mysql> USE qmetry;
    • mysql> UPDATE client SET domain='localhost:8181' limit 1;
    • mysql> \q

If default ports used are : 80 for HTTP & 443 for HTTPS, then port number will not present in the domain URL, so no change is required in the domain URL.

Documentation

The documentation regarding Certificates & SSL in Glassfish 4.0 Open Source edition(same document applies for Payara 4.1) is in the Security Guide, in the following sections:

  • Section “Certificates and SSL”, page 1-10
  • Section “Firewalls”, page 1-9

If mod_jk is being used, then the relevant documentation is in the Glassfish Administration Guide, section “Administering mod_jk”.

Reference link for Glassfish(same document applies for Payara 4.1) documentation : https://glassfish.java.net/documentation.html 

Starting QMetry 

You can access QMetry from any computer with network access to your QMetry server by opening a supported web browsers on the computer and visiting this URL: 

  • http://<domain_name>:<port_number>/qmetry 

where: 

  • <domain_name> is the name which you gave at the time of installation.
  • The default QMetry Login Credentials are: admin/qmetry1@#4, automation/qmetry1@#4

Verify QMetry URL

If your QMetry is running on secure http protocol then enable the option of HTTPS.

  • Go to Admin>>General settings>>Secure Http settings.
  • Enable the checkbox of HTTPS.

QMetry On-Demand

If you do not have the resources to set up and maintain a QMetry installation locally, consider QMetry hosted solution. We can run and maintain your installation of QMetry, handling all the testing, monitoring and upgrading processes for you. For more information, please refer to the information about QMetry On-Demand on our website. 

Contact QMetry 

Please contact QMetry if you face any issues during installation. You can email us at support@qmetry.zendesk.com which will automatically create a ticket in our support portal which will allow all of us to monitor the status on the issue until it is resolved. 

 

1:Note: If you intend to integrate JIRA with QMetry, while JIRA running on HTTPS, QMetry is also required to run on HTTPS to make the linkage between JIRA and QMetry to work properly.

Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request

0 Comments

Article is closed for comments.
Powered by Zendesk