/
QESTLab Installation Guide

QESTLab Installation Guide

Applies to QESTLab

This article details the installation process for the QESTLab product. This includes installation, configuration and solutions to common problems.

Contents

Overview

The QESTLab product is a desktop application and is used as a laboratory information management system.

Installation guide

Prerequisites

The following must be present in the target environment to support QESTLab.

Machine

  • Windows Server 2008 R2.

  • Windows 7 or later (64-bit).

  • Microsoft .NET Framework 4.6.2 or later. If required, this will be installed via the QESTLab installer if the environment has internet access.

QEST Platform Database

Fresh Installations

For a new installation where a pre-configured database backup file has been provided, the backup file will need to be restored on the appropriate Microsoft SQL Server instance. For an overview of the process for restoring a database backup please see Restoring a QEST Platform Database Backup. For more general information on configuring the SQL instance that the QEST Platform database will be hosted on, please refer to the SQL Server Configuration Recommendations article.

QESTLab users will need to be granted access to the QEST Platform database. Please refer to the Granting Access to the QEST Platform Database article for more details.

Updates

When running an update rather than a fresh installation, the QEST Platform database will need to be upgraded using the QEST Script Runner tool and the provided upgrade package(s). Please refer to the Upgrading a QEST Platform Database article for more details.

QESTLab Installation Files

  1. The QEST Platform installer(s) QESTLab Setup V.M.B.R.exe (where V is the major version, M is the minor version and B and R are the build and revision numbers). e.g. QESTLab Setup 4.90.3661.39208.exe

  2. The compressed file containing the QEST Custom test reports definitions QEST Custom Test Reports V.M.B.R.zip. e.g. QEST Custom Test Reports 4.90.3661.37199.zip

In order to download the necessary installation files, follow the steps below.

  1. Use an SFTP client to connect to ftp.spectraqest.com:22 and login with the username and password provided by Spectra QEST.

  2. Open the QESTLab_Installation_Package/ folder and download the necessary files. If this is a fresh installation rather than an update, there will also be a database backup. Refer to Restoring a QEST Platform Database Backup for more details.

Installation Process

Offline Installation

A prerequisite for QESTLab is the Microsoft .NET Framework 4.6.2 must be installed. The QESTLab installer itself has the ability to download and install this during its own installation. This is only possible if the machine has the ability to connect to the internet. If QESTLab is installed offline, however, Microsoft .NET Framework 4.6.2 must be installed in order for the installation of QESTLab to proceed. The following extra steps are necessary if QESTLab is installed offline:

  1. Copy across the QESTLab installation files and the .NET Framework installer to the client machine or application server.

  2. Run and install .NET Framework 4.6.2.

  3. Once the installation is complete, continue per the General Installation steps below

General Installation

  1. Double click on the QESTLab V.M.B.R.exe to install QESTLab.

     

  2. On the first screen, check the License Terms and Conditions checkbox to confirm agreement with the terms and conditions. If the installation location needs to be changed, click the Options button.

    1. If changing the default installation path, modify or select the Install Location for the QESTLab Client. To continue, click OK



  3. Click Install in order to install QESTLab.

  4. When installation is complete, click Close. 

  5. Shortcuts for QESTLab and the QEST Administrator Console should be created on the desktop and in the Program Files menu.

  6. Open up QESTLab and confirm that QESTLab launches to the login screen or directly into the application if an auto login domain has been configured.

Configuration guide

QIntegrator

The QIntegrator is included as part of the QESTLab installer and as such requires no separate installation. It includes a configuration file that describes the location of the QESTNet server. If QESTNet is not installed, then no modifications to the configuration are required.

QIntegrator.dll.config

There are two parts to the config file that require configuration. The first is the qestNetApiLocation setting. This tells the QIntegrator where it can find the QESTNet API. The default is http://machinename.domain:53535 and should be set to localhost if the QESTNet service is installed on the same server as QESTLab. If QESTLab is installed on a different server than the QESTNet service, the appropriate host name and port number should be entered here instead. If using the default port 53535, the scheme and port may be omitted - e.g. localhost, http://localhost, or qestnet.example. If a port is specified, then the scheme - http - must also be specified. e.g. http://localhost:55535/. Specifying only a host and port is invalid e.g. localhost:53535 will not work.

<configuration> <appSettings> <add key="qestNetApiLocation" value="http://localhost:53535" /> </appSettings> </configuration>

You can also set the QESTNet API location via a command-line argument, for example /QNRESTURI http://localhost.

The second configuration section of the config file is the binding configuration for the Integration session. This allows the QIntegrator to communicate directly with the server on which QESTNet is installed. The default configuration uses Named Pipe Binding which is used when the QIntegrator and QESTNet installation are on the same server.

<system.serviceModel> <bindings> <netNamedPipeBinding> <binding name="UnsecuredBindingNamedPipe"> <security mode="None" /> </binding> </netNamedPipeBinding> </bindings> <client> <endpoint name="Integration_Session" address="net.pipe://localhost/Integration" binding="netNamedPipeBinding" bindingConfiguration="UnsecuredBindingNamedPipe" contract="Spectra.QESTNET.Contracts.ISessionService" /> <endpoint name="Integration_Integration" address="net.pipe://localhost/Integration" binding="netNamedPipeBinding" bindingConfiguration="UnsecuredBindingNamedPipe" contract="Spectra.QESTNET.Integration.Contracts.IIntegrationService" /> </client> </system.serviceModel>


If the QIntegrator and QESTNet installation are on separate servers but on the same network, then Net TCP Binding should be used to communicate between the two. 

<system.serviceModel> <bindings> <netTcpBinding> <binding name="UnsecuredBindingNetTcp" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:05:00" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647"> <security mode="None" /> </binding> </netTcpBinding> </bindings> <client> <endpoint name="Integration_Session" address="net.tcp://localhost:52525/Integration" binding="netTcpBinding" bindingConfiguration="UnsecuredBindingNetTcp" contract="Spectra.QESTNET.Contracts.ISessionService" /> <endpoint name="Integration_Integration" address="net.tcp://localhost:52525/Integration/integration" binding="netTcpBinding" bindingConfiguration="UnsecuredBindingNetTcp" contract="Spectra.QESTNET.Integration.Contracts.IIntegrationService" /> </client> </system.serviceModel>

By default, logging is enabled and files will be written to the user's local app data folder at %LOCALAPPDATA%\QESTLab Logs\. This is the user that launches the QESTLab application. The logging location can be customised or centralized via the log4net section in the config file:

<log4net> <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender"> <appendToFile value="true" /> <!-- Note that a qualified path to the file is recommended, such as "c:\logs\qintegrator". An unadorned path (such as "qintegrator") can be used, but this will by default attempt to log to the installation directory e.g. %ProgramFiles(x86)%\Spectra QEST\QESTLab Client\qintegrator.txt Windows will typically prevent these files from being written directly to that location for non-administrator users, so such files would instead be written to %USERPROFILE%\AppData\Local\VirtualStore\Program Files (x86)\Spectra QEST\QESTLab Client\qintegrator.txt You can also specify paths to user directories such as: ${USERPROFILE}\Documents\qintegrator ${LOCALAPPDATA}\Spectra QEST\qintegrator --> <file value="${LOCALAPPDATA}\QESTLab Logs\qintegrator" /> <datePattern value=".yyyy.MM.dd.\l\o\g" /> <rollingStyle value="Date" /> <param name="StaticLogFileName" value="false" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%date [%thread] %-5level - %message%newline%exception" /> </layout> </appender> <root> <level value="WARN" /> <!-- Comment out the line below to disable logging --> <appender-ref ref="RollingLogFileAppender" /> </root> </log4net>

Troubleshooting guide

Errors During Use

QESTLab DSN Errors

If the DSN is not configured correctly via ODBC Data Source Administrator, then users will most likely encounter the following error after running the QESTLab Client (QLC.exe) executable.

This error may be caused by:

  • An incorrect DSN name specified in the config.ini file

  • An incorrect DSN configuration via ODBC Data Source Administrator

  • A result of insufficient database rights in the SQL Server.

QESTLab License Validation Errors

There are a few possible reasons that could cause QESTLab License Validation errors to appear. These are explained below and are generally directly related to the QEST.LIC file installed in the database.

Insufficient Database Permissions

The following error messages could be thrown if users do not have sufficient (or complete lack of) rights to the QESTLab database in SQL Server, hence not allowing the table holding the licensing information to be read.

Incorrect QEST License

The QESTLab Client could also fail to run if an incorrect/incompatible license file is installed via the QEST Admin Console. If the following errors occur please ensure you have the correct license file installed in the QEST Admin Console, if this does not resolve the issue please contact Spectra QEST. 

Expired QEST License

The QESTLab Client could also fail to run if the expiry date of the license file installed, has lapsed. If this error occurs please contact Spectra QEST for an updated license file. 

MsComCtl.ocx and QLCImageMemory errors when first running QESTLab

When attempting to run QESTField, an error message similar to the below appears:

Resolution

This occurs on 32-bit systems when QESTLab icon changes have corrupted the icon files. A QESTLab rebuild is required for 32-bit systems, or the environment needs to be upgraded to 64-bit. Note that on 64-bit systems these files continue to work.

Please contact Spectra QEST for a new installer.

Unable to authenticate to QESTNet

If QESTLab is configured to connect to QESTNet, this error occurs when that connection could not be established.

Resolution

Check the configuration in the QIntegrator.dll.config file.

Check for log files in the user's local application data directory at %LOCALAPPDATA%\QESTLab Logs\.

If there are no log files present, check the QIntegrator.dll.config file installed in the QESTLab Client directory to see if logging is enabled, and to what location.



Related content

Integrity | Curiosity | Empathy | Unity

The content of this page is confidential and for internal Spectra QEST use only. Do not share, duplicate or distribute without permission.