trial download quickstart guide - big data testing, etl ... · trial download quickstart guide v10...
Post on 12-Jun-2018
243 Views
Preview:
TRANSCRIPT
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
Trial Download QuickStart Guide v10
Everything you need to know to get started with QuerySurgetrade and Your Data
Built by
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
2
QuickStart Guide version 41
Note The purpose of this QuickStart Guide is to provide you with the ability to get up and running with your data and
databases files If you do not have access to your data then your best bet is to go through the QuerySurgetrade Tutorial
The Tutorial comes complete with sample data and sample SQL queries along with data models and schemas
About QuerySurgetrade
QuerySurgetrade is the only testing tool built specifically to automate the testing of data warehouses and the ETL testing
process QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and
pinpointing any differences QuerySurgetrade is also very effective when testing Data Migrations Database Upgrades
System Upgrades and Interface Testing
QuerySurgetrade helps you
Test across different platforms whether they are flat files XML Oracle Teradata Microsoft IBM or other databases data warehouses
Automate the testing effort from the execution of tests to the comparison of all data to emailing the results to your team
Speed up testing by executing tests and comparing millions of result sets as much as 100 times faster than manually
Schedule tests to run anytime whether it be right now or every Tuesday at 8pm or when the ETL process is complete
View and share test results through our deep-dive reporting ability and our automated emailing of reports and notifications
The QuerySurgetrade workflow parallels the major tasks involved in testing your data warehouse architecture ndash it can be
used by ETL Developers ETL Testers Business Analysts who build and deliver your data warehouse and the Operations
teams who monitor it in production
Caution Make sure that after you have installed QuerySurgetrade you utilize the lsquoSetup Wizardrsquo (below) on the top toolbar
of QuerySurgetrade to connect to your source files and or databases and target data warehouse before beginning this
QuickStart Guide If you have not performed the necessary connections for both source and target QuerySurgetrade will
not be able to access your data
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
3
Table of Contents
About QuerySurgetrade helliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphellip2
Welcome to QuerySurgetrade 4
Understanding QuerySurgetrade 5
The QuerySurgetrade Testing Process 7
About the QuerySurgetrade Architecture 9
QuerySurgetrade Terminology 11
QuickStart Walkthrough 12
Login to QuerySurgetrade 12
Create a QueryPair test from scratch 14
Review of QuerySurgetrade Agent and Agent Status 17
Design-Time Run execution of an existing QueryPair test 19
Create a Reusable Query Snippet 23
Review of a failed QueryPair 27
Creating a Test Suite 29
Creating a Scheduled Execution Scenario 32
Running Reports 37
Query Wizard 39
Review of Data Health Dashboard helliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphellip45
Automated Email Notifications 458
Command Line Integration 51
Troubleshooting Common Issues 54
Things to do next 62
About RTTS (developers of QuerySurgetrade) 63
About QuerySurgetrade 63
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
4
Welcome to QuerySurgetrade
Welcome to QuerySurgetrade RTTSrsquo enterprise testing tool that automates the testing of Big Data Data Warehouses and
the ETL testing process QuerySurgetrade is also very effective when testing Data Migrations Database Upgrades System
Upgrades and Interface Testing QuerySurgetrade ensures that the data extracted from sources remains intact in the target
by analyzing and pinpointing any differences
This QuickStart Guide is not meant to be an all-inclusive guide but is targeted at providing you with an overview of
QuerySurgetrade and some of the key functionality provided Additional information regarding other features in
QuerySurgetrade can be found in the online Help
Resources
QuerySurgetrade Help is built into the product and provides immediate answers to questions that arise as you work
with QuerySurgetrade Help can be found in the top toolbar in text form or in the bottom panel by the Help icon
QuerySurgetrade Chat can be accessed through the QuerySurgetrade product or on the QuerySurgetrade web site Experts
are available Monday to Friday from 900am to 500pm Eastern Time (New York) to assist you with questions regarding
installation configuration and usage of the QuerySurgetrade testing tool Chat can also be used during off hours to leave
text questions or comments
Video Library provides tutorials demos and webinars on the ins and outs of QuerySurgetrade usage
httpwwwquerysurgecomproduct-tourvideo-library
Contact Us page provides a form where you can submit comments questions or suggestions
httpwwwquerysurgecomcompanycontact-us
Documentation
System Requirements Guide ndash hardware and software needed to minimally and optimally run
QuerySurgetrade
Installation Guide for Windows
Configuration Guides (Most of these configurations are automated in the lsquoSetup Wizardrsquo within
QuerySurgetrade)
o Configuring A Connection To IBM DB2
o Configuring A Connection To A Delimited Flat File
o Configuring A Connection To A Fixed-Width Flat File
o Configuring A Connection To Oracle
o Configuring A Connection to Teradata
o Configuring a Connection to SQL Server
o Configuring A Connection To SQL Server With Windows Authentication
o Configuring A Connection To IBM Netezza
QuickStart User Guide (this document)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
5
Understanding QuerySurgetrade
Data Warehouse Testing
Comprehensive testing of a data warehouse at every point throughout the ETL (extract transform and load)
process is becoming increasingly important as more data is being collected and used for strategic decision-
making
Data warehouse projects are undertaken as a result of mergers and acquisitions compliance and regulations
data consolidation and the increased reliance on data-driven decision making (using Business Intelligence tools
etc)
Any way you slice it the data warehousebusiness intelligence (BI) platform is complex and presents many data
quality and testing problems to overcome Some of the main challenges of data warehouse testing are
Data Completeness Verifying that all data has been loaded from the sources to the target data
warehouse
Data Transformation Ensuring that all data has been transformed correctly during the ETL process
Data Quality Ensuring that the ETL process correctly rejects corrects ignores substitutes default
values and reports invalid data
Regression Testing Ensuring existing functionality remains intact each time a new release of code is
completed
QuerySurgetrade is a test tool that automates data warehouse and ETL testing QuerySurgetrade verifies data
completeness correct transformation logic ensures data quality and provides for regression testing of upwards
of 100 of all data QuerySurgetrade has five different modules
1) Design Library
Use the QuerySurgetrade lsquoDesign Libraryrsquo tools to create collections of powerful tests across your data warehouse
architecture
Create test QueryPairs between any two points (Source Staging Data Warehouse Data Mart) in your
architecture
See query history for all of your queries
Run QueryPair executions as you build queries to ensure they produce the required results
Make your design flexible with Reusable Query Snippets - Snippet libraries of query fragments that you
can use to modularize your queries helping to speed up the process of bulk QueryPair updates
Run the Query Wizard which provide information for (1) row count compares (2) full table compares
and (3) column compares without writing any SQL code
2) Scheduling
Schedule your testing by time and location for maximum productivity Schedule your tests for the specific
time and day or run tests when an event like the ETL process completes
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
6
Mix-and-match test QueryPairs in QuerySurgetrade Test Suites to meet specific project execution goals
Build groups of QuerySurgetrade Test Suites to test specific mappings ETL logic or data warehouse sources
Build QuerySurgetrade Scenarios for scheduling your execution runs at specific dates and times
Use the execution API for event-based scheduling
3) Run Dashboard
Visualize and track the real-time progress of your running Scenarios on the QuerySurgetrade lsquoRun Dashboardrsquo A
graphical display helps you to follow the flow of your queries and you can drill-down to see test details and
data failures
View query execution progress live via graphical run status displays
Drill-down into data as QuerySurgetrade executes to examine results as they become available during
execution
See real-time statistics for each QueryPair executed and for the Scenario execution as a whole
Alert your team about the status of execution via custom email notifications
Export detailed results in Excel CSV or XML formats to share with team members and other project
stakeholders
4) Reporting
Get a comprehensive audit and share detailed results with others Use QuerySurgetrade reports to share both high-
level and detailed views of your testing with team members managers and business stakeholders
Choose from a wide selection of configurable reports within the QuerySurgetrade lsquoReporting Centerrsquo
Built-in reports range from high-level summary reports to lower-level detailed reports with a complete
audit trail of test modifications
Configure reports for specific date ranges asset types or specific executions to get a view into your
results that you need
Export your reports as Excel or PDF files to share within your organization or to archive for future audit
needs
5) Administration
The administration module provides access to the control features of your QuerySurgetrade installation Here you
have the ability to create and manage user profiles database connections Agent configuration data archiving
and automated email notification options
Create and manage QuerySurgetrade users and Agents
Manage QuerySurgetrade data storage with the included storage tools
Create and manage connections to source and target data stores
View QuerySurgetrade server information including configuration settings and your application licensing details
Create automated email notifications to send results to your team at the end of a test run
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
7
The QuerySurgetrade Testing Process
Testing and validating the ETL process is the key component to the success of a data warehouse
implementation Bad data caused by defects in the ETL process can cause data problems in reporting that can
result in poor strategic decision making
Example A large fast food company depends on BI reports to determine how much raw beef to order on a
monthly basis by sales region and time of year If these reports are not correct then the company could order
an incorrect amount which could cost the company millions of dollars in either lost revenue or wasted product
Developers utilize ETL tools to accomplish the extracting transformation and loading of data from sources into
target systems
Test Points and ETL Legs
bull An lsquoETL Legrsquo refers to a single ETL process that movestransforms data between two discrete points in the data
warehouse architecture
bull A full ETL process may have multiple legs
bull Test points and single ETL leg the verification is between the source and the target for that leg
Example An operational source database (source test point) is extracted transformed and loaded into a data
warehouse (target test point) Testing is conducted across this ETL leg
bull Test points and multiple ETL legs The multi Leg approach is to validate multiple legs of the ETL process in a
single test lsquojumping overrsquo ETL legs in the process A typical multi Leg test is to validate the entire ETL process
from data sources to final data endpoint utilizing test points only at the data sources and at the final data
endpoint
Data Mapping Document
A data mapping document frequently called a source-to-target map is the most important artifact when testing
a data warehouse and is generally created in an Excel spreadsheet or Word document The mapping document
acts as a central part of the functional requirements Testers use the mapping document to verify that the data
has been extracted from the source databases and files into the target data warehouse and data marts
correctly and that the transformations have been performed according to the specifications detailed in the
mapping document The following information is contained within the mapping document
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
8
QuerySurgetrade The Process in a Nutshell
Review mapping document
Determine the optimum percent of coverage or amount of data that is required to be tested based upon time
and resources
If not testing 100 of the data determine the exact sampling of data needed
Create test cases that exercise the requirements of the mapping document
Create pairs of SQL queries (QueryPairs) ndash one aimed at the source database or file one at the target data
warehouse or data mart
Bundle groups of QueryPairs (Test Suites) into test Scenarios
Schedule Scenarios to run (a) immediately (b) at a certain day and time or (c) automatically after an event
Analyze and drill down into your results and identify bad data and data defects with our robust reporting engine
Report defects in your defect tracking tool (ie HP Quality Center IBM Rational Quality Manager Jira Bugzilla
etc)
Have reports sent automatically via email to team members
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
9
About the QuerySurgetrade Architecture
QuerySurgetrade is a locally installed browser-based testing tool Supporting all current browsers (Chrome Firefox IE
Safari etc) QuerySurgetrade is perfect for teams that are geographically distributed QuerySurgetrade extracts the data-
under-test to its own separate
infrastructure which eliminates processing
overhead on the source and target database
servers in your data warehouse
architecture The QuerySurgetrade architecture
is comprised of an application server
database server and Agents
QuerySurgetrade Application Server and
Database
QuerySurgetrade utilizes a Tomcat application
server and a MySQL database The database
is bundled with and embedded within the
product
QuerySurgetrade Agents
QuerySurgetrade Agents are the components of the architecture that execute queries against source and target data
sources returning the results to the QuerySurgetrade database The Agents execute SQL queries validating each piece of
data throughout the ETL process This exposes all data mismatch failures row count differences and column type
mismatch failures affording you the ability to test to 100 of your data quickly
Although the Agents issue queries to both the source and target databases they do not reside on the physical source or
target database boxes QuerySurgetrade Agents can be deployed on the same box as the QuerySurgetrade Application Server
and QuerySurgetrade Database Server in a single box install or on any ldquosatelliterdquo boxes in the environment (often these are
test lab boxes or available desktop boxes) The QuerySurgetrade Agent when it receives a bundle of queries can run
multiple queries simultaneously (in parallel)
One of the features QuerySurgetrade gives you is the ability to raise your lsquotesting throughputrsquo The idea is to be able to fire
off QueryPairs in bulk against your sources and targets so that you can execute at the highest level your environment
can support The QuerySurgetrade Agent lets you do this because you can deploy multiple Agents in your environment ndash on
lsquosatellitersquo boxes surrounding your QuerySurgetrade server (note that each Agent can run multiple query threads as well)
QuerySurgetrade allows you to install up to 10 Agents
More Agents = more queries = more throughput
How many Agents are appropriate for your environment The answer is ndash you find out by experimentation Once you
have built an initial test library start with 2 or 3 Agents and see how your sources and targets behave Add additional
Agents in a subsequent cycle again monitoring the source and target behavior As you continue to add Agents the loads
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
10
on sources and targets will grow with query volume ndash and sourcetarget response times will start to grow as well Once
you have identified the level where response times have started to increase back down to the previous level This level
is roughly the maximum throughput your current environment can support
For more information on Agents please visit AdministrationAgents in the Help guide
Database Data Warehouse Support
In principle QuerySurgetrade can support any JDBC-compliant data source QuerySurgetrade currently ships with Oracle
MySQL Teradata Aster SQL Server DB2 Informix Netezza Sybase in-memory database and flat file support and
supports many other data sources
Installation Requirements
For a trial installation the QuerySurgetrade application server the QuerySurgetrade database server and QuerySurgetrade Agents
may be installed either on a single box or on separate boxes Minimum requirements for a single box installation are 4
GB of memory and 100 GB of disk space More memory and disk space will always provide better performance
Deploying to a distributed environment with multiple boxes or VM images (ie database server on one box app server
on another Agent(s) on other boxes) will have a positive impact on the query size data volume and QuerySurgetrade
performance that can be handled during the trial For additional information on system requirements please refer to
the document QuerySurgetrade System Requirements
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
11
QuerySurgetrade Terminology
QueryPair
A pair of SQL queries where one query retrieves data from a source file or database and
another SQL query that retrieves data from a target database data warehouse or data mart
Agent
Performs the actual query tasks Agents execute queries against source and target data stores and return
the results to the QuerySurgetrade database
Design-Time Run
Allows you to execute a QueryPair test to make sure that it behaves as you expect This is not intended for
actual test execution purposes
Query Snippet
Reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet is to
minimize the number of places you need to make changes on the same code in different SQL calls
Test Suite
A collection of QueryPairs used for execution This feature allows you to group your QueryPairs execution
purposes that is independent of your lsquoDesign Libraryrsquo organization
Scenarios
A collection of Suites that are scheduled for execution
Query Wizard
A tool that allows you to generate QueryPairs automatically requiring no SQL coding It is a fast and easy
way to create QueryPairs for both manual testers who do not have SQL skills as well as for testers who are
skilled at SQL and want to speed up test authoring The Query Wizard generates tests that can cover about
80 of all data in a data warehouse automatically 1
Widgets
Project Widgets give you a real-time view into your project progress at all levels from QueryPair
development to execution and results
Command Line Integration
Provides the ability to schedule Test Suites to run using Windows Task Scheduler or integrate with a
continuous build system
1 A recent poll conducted by RTTS on targeted LinkedIn groups found that 80 of columns in data warehouse tables have no transformations
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
12
QuerySurgetrade
QuickStart Guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
13
Login to QuerySurgetrade
Upon QuerySurgetrade installation one Administrative user is created for you to get started
1 On the installation machine click the lsquoStartrsquo button
2 In the lsquoStartrsquo menu select All Programs QuerySurgetrade Launch QuerySurgetrade
3 QuerySurgetrade will launch in your default browser
4 Enter Username ldquoadminrdquo and password ldquoadminrdquo and click the lsquoLoginrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
14
Create a QueryPair test from scratch
A QueryPair is what QuerySurgetrade refers to as a pair of queries that have the following characteristics
o One SQL query that retrieves data from a source file or database and o Another SQL query that retrieves data from a target big data store data warehouse data mart or database
These two queries together comprise a QueryPair
1 Click the lsquoQueryPairsrsquo folder in the lsquoDesign Libraryrsquo panel
2 Click the lsquoCreate New QueryPairrsquo button
3 Enter ldquoMy Test QueryPairrdquo in the lsquoQueryPair Namersquo field and enter ldquoMy first QueryPairrdquo in the lsquoDescriptionrsquo field
Points of interest
o The lsquoCreate a New QueryPairrsquo dialog contains
QueryPair Name field ndash a name for your QueryPair
Description field ndash a description for your QueryPair
Mapping field ndash for reference back to a mapping document if applicable (Data mapping is a
process used in data warehousing by which different data models are linked to each other
Mappings are typically used for transformations in the ETL process or for consolidation of
multiple databases and or redundant columns )
4 Click the lsquoSaversquo button on the lsquoCreate New QueryPairrsquo dialog and the new QueryPair tab will open
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
15
Points of interest
o The lsquoQueryPairrsquo tab contains
lsquoSourcersquo and lsquoConnectionrsquo ndash for storing the source query with a connection
lsquoTargetrsquo and lsquoConnectionrsquo ndash for storing the target query with a connection
lsquoSaversquo icons ndash for saving the source or target query
5 Enter your SQL in the lsquoSourcersquo query text lsquoEditorrsquo (copypaste will work)
6 Select your source DB from the source lsquoConnectionrsquo drop-down
7 Enter your SQL in the lsquoTargetrsquo query text lsquoEditorrsquo (copypaste will work)
8 Select your target DB from the target lsquoConnectionrsquo drop-down
Points of interest
o In the screenshot above lsquocountryNamersquo is the column name in the source COUNTRYISO table
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
16
o In the screenshot above lsquocountryNamersquo is the column name in the target lsquoCountryrsquo table (same name in
both source and target)
o For demonstration purposes both columns were aliased to lsquoCountryrsquo QuerySurgetrade does not require
both source and target columns to be named the same (although this is a best practice) however the
columns need to be in the same logical order between source and target
9 Click the lsquoSaversquo icon on both the source and target queries
For more information on QueryPairs please visit Design LibraryQueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
17
Review of QuerySurgetrade Agent and Agent Status
QuerySurgetrade Agents perform the actual query tasks Agents execute queries against source and target data stores and return the results to QuerySurgetrade When you install a QuerySurgetrade Agent the installer will ask you for the URL of your QuerySurgetrade installation The installer will then install and start the Agent When the Agent starts it will check its registration status with QuerySurgetrade and it will auto-register if necessary
1 Agent status can be determined visually via the Agent icon in the bottom right of the GUI
Points of interest
o Agent icon appears red on bottom when busy
o Agent icon appears yellow on bottom when idle
o Agent icon appears gray on bottom when offline
o Mouse-over the Agent icon to reveal the status of all Agents
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
18
2 Click the Agent icon to open an lsquoAgent Activityrsquo window
Points of interest
o The lsquoAgent Activityrsquo window contains
Hostname ndash the names of all Agents that have been added
Status ndash Agents can be Idle Offline or Running a Scenario
Last Ping ndash date and time the Agent last communicated with QuerySurgetrade Active Agents
display a checked green symbol inactive Agents display an Xrsquod red symbol
Additional points
o You may install multiple QuerySurgetrade Agents up to the number that your license permits
o Each QuerySurgetrade Agent deployed in your environment needs at least one JDBC driver to work with
your data sources A JDBC driver is a piece of software that allows your Agent to talk to a data source
So for example if you plan to use QuerySurgetrade with Oracle and Teradata you will need to install both
the Oracle and the Teradata drivers with each Agent
o The QuerySurgetrade Installer comes bundled with JDBC drivers for several industry-standard databases
and you can install these drivers when you install the Agent
o You can always add new drivers using the installer after you have installed an Agent
o Your JDBC driver product may not be bundled with QuerySurgetrade if not you will have to deploy the
JDBC driver(s) manually to the Agent machine For more information see Adding JDBC Drivers
o QuerySurgetrade Agent installs as a service by default
For more information on Agents please visit AdministrationAgents in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
19
Design-Time Run execution of an existing QueryPair test
The lsquoDesign-Time Runrsquo tab displays detailed results for each QueryPair This tab allows you to execute a QueryPair test
run to make sure that it behaves as you expect This is not intended for actual testing execution purposes
1 Click on the + next to the lsquoQueryPairsrsquo folder on the left to expand the folder
Points of interest
o QuerySurgetrade utilizes a folder structure similar to Microsoft Windows Explorer
o Multiple sub-folders can be contained within folders
o QueryPairs are contained within each folder
2 Double-click your QueryPair to open it
Points of interest
A QueryPair has the following tabs
o The lsquoQueryPairrsquo tab contains
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
20
lsquoSource Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoTarget Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoSaversquo icons ndash for saving the source or target query
o The lsquoPropertiesrsquo tab contains
QueryPair name description and mapping fields
Data Type Checking ndash Ability to check data types or convert all types to varchar (String)
before comparison
Row Count Options ndash to set reporting for row count differences
Key Column Definition ndash to set a column from either the source or target query as key
Row Duplicate Options ndash to set whether or not QuerySurgetrade checks for duplicate rows
o The lsquoDesign-Time Runrsquo tab contains
Detailed results for each QueryPair This tab allows you to execute a QueryPair test run to
make sure that it behaves as you expect
o The lsquoHistoryrsquo tab shows the history of changes to the QueryPair
o The lsquoDTR Historyrsquo tab shows passfail information from previous lsquoDesign-Time Runsrsquo (currently
empty as no runs have been executed yet)
3 Click the lsquoDesign-Time Runrsquo tab
Points of interest
o The lsquoDesign-Time Runrsquo tab allows you to execute a test run to make sure that the QueryPair behaves as
you expect (not for actual testing execution purposes)
o The first time clicking on the rsquoDesign-Time Runrsquo will indicate that a run has not occurred previously for a
QueryPair
o A specific Agent if desired can be selected in the drop down menu (not required )
o Once you perform a lsquoDesign-Time Runrsquo the most recent results will always display here
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
21
4 Click the lsquoRunrsquo button to execute the QueryPair
Points of interest
o When executing a lsquoDesign-Time Runrsquo QuerySurgetrade goes through the following phases
Loading ndash QuerySurgetrade is loading the SQL pairs onto the Agent for execution
Running ndash The Agent is running the target and source queries
Analyzing ndash QuerySurgetrade is comparing the results
o QuerySurgetrade displays the following information about the last lsquoDesign-Time Runrsquo
Source Rows ndash number of source rows returned
Target Rows ndash number of target rows returned
Row Count Difference ndash number of rows different between source and target
Failed Row Count ndash number of rows with data differences
Non-Matching Source Rows ndash number of source rows not found in the target (based on key
column(s))
Non-Matching Target Rows ndash number of target rows not found in the source (based on key
column(s))
o lsquoConnectionsrsquo and lsquoQuery Performancersquo metrics are displayed
5 Click the lsquoView Query Resultsrsquo button to bring up the results window
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
22
Points of interest
o The lsquoQueryPair Resultsrsquo window contains five tabs
Source Tab ndash displays the source result rows
Target Tab ndash displays the target result rows
Failures Tab ndash displays data failures (not populated in this example as no rows failed)
Source Query Tab ndash displays the source query
Target Query Tab ndash displays the target query
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
23
Create a Reusable Query Snippet
A query Snippet is a reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet
is to minimize the number of places you need to make changes on the same code in different SQL calls A Snippet does
not have to be a syntactically intact query (for example it might just be a WHERE clause) but there is no reason why it
canrsquot be a complete query (eg a reusable sub-query) This feature lets you develop libraries of lsquoReusable Query
Snippetsrsquo to be reused in multiple queries If a Snippet shared by multiple queries needs to change you can make the
change once and all of the queries using the Snippet are changed automatically
To create a lsquoReusable Query Snippetrsquo
1 Click the lsquoReusable Query Snippetsrsquo folder in the lsquoDesign Libraryrsquo
2 Click the lsquoCreate New Reusable Query Snippetrsquo button
3 Enter ldquoMy Test Snippetrdquo in the lsquoReusable Query Snippet Namersquo field and enter ldquoMy first reusable query snippetrdquo
in the lsquoDescriptionrsquo field
4 Click the lsquoSaversquo button on the lsquoCreate New Reusable Query Snippetrsquo dialog
5 Enter your SQL in the lsquoReusable Query Snippetrsquo text lsquoEditorrsquo (copypaste will work)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
24
Points of interest
o A lsquoReusable Query Snippetrsquo has the following tabs
Reusable Query ndash where the SQL resides
Properties ndash for additional descriptive information and metadata
History ndash shows the history of changes made to the Snippet
Appearances ndash shows which QueryPairs contain the Snippet
6 Click the lsquoSaversquo button to save your lsquoReusable Query Snippetrsquo
7 The newly created lsquoReusable Query Snippetrsquo is added to the lsquoDesign Libraryrsquo and is now available for use
Adding a lsquoReusable Query Snippetrsquo to a QueryPair
1 Open the ldquoMy Test QueryPairrdquo previously created
2 Place your cursor within the existing SQL query where you would like to add the Snippet
3 Click the lsquoAdd Reusable Query Snippetrsquo button
4 Click the lsquoReusable Query Snippetsrsquo folder on the left panel
5 Select lsquoMy Test Snippetrsquo in the top right panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
25
Points of interest
o The left panel utilizes a folder structure similar to Microsoft Windows Explorer (your Snippet is saved
in the root folder but can be grouped by subfolders manually)
o The top right pane displays the lsquoReusable Query Snippetsrsquo including the one you created earlier
o The bottom right panel displays the SQL of the selected Snippet
6 Click the lsquoOKrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
2
QuickStart Guide version 41
Note The purpose of this QuickStart Guide is to provide you with the ability to get up and running with your data and
databases files If you do not have access to your data then your best bet is to go through the QuerySurgetrade Tutorial
The Tutorial comes complete with sample data and sample SQL queries along with data models and schemas
About QuerySurgetrade
QuerySurgetrade is the only testing tool built specifically to automate the testing of data warehouses and the ETL testing
process QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and
pinpointing any differences QuerySurgetrade is also very effective when testing Data Migrations Database Upgrades
System Upgrades and Interface Testing
QuerySurgetrade helps you
Test across different platforms whether they are flat files XML Oracle Teradata Microsoft IBM or other databases data warehouses
Automate the testing effort from the execution of tests to the comparison of all data to emailing the results to your team
Speed up testing by executing tests and comparing millions of result sets as much as 100 times faster than manually
Schedule tests to run anytime whether it be right now or every Tuesday at 8pm or when the ETL process is complete
View and share test results through our deep-dive reporting ability and our automated emailing of reports and notifications
The QuerySurgetrade workflow parallels the major tasks involved in testing your data warehouse architecture ndash it can be
used by ETL Developers ETL Testers Business Analysts who build and deliver your data warehouse and the Operations
teams who monitor it in production
Caution Make sure that after you have installed QuerySurgetrade you utilize the lsquoSetup Wizardrsquo (below) on the top toolbar
of QuerySurgetrade to connect to your source files and or databases and target data warehouse before beginning this
QuickStart Guide If you have not performed the necessary connections for both source and target QuerySurgetrade will
not be able to access your data
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
3
Table of Contents
About QuerySurgetrade helliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphellip2
Welcome to QuerySurgetrade 4
Understanding QuerySurgetrade 5
The QuerySurgetrade Testing Process 7
About the QuerySurgetrade Architecture 9
QuerySurgetrade Terminology 11
QuickStart Walkthrough 12
Login to QuerySurgetrade 12
Create a QueryPair test from scratch 14
Review of QuerySurgetrade Agent and Agent Status 17
Design-Time Run execution of an existing QueryPair test 19
Create a Reusable Query Snippet 23
Review of a failed QueryPair 27
Creating a Test Suite 29
Creating a Scheduled Execution Scenario 32
Running Reports 37
Query Wizard 39
Review of Data Health Dashboard helliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphellip45
Automated Email Notifications 458
Command Line Integration 51
Troubleshooting Common Issues 54
Things to do next 62
About RTTS (developers of QuerySurgetrade) 63
About QuerySurgetrade 63
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
4
Welcome to QuerySurgetrade
Welcome to QuerySurgetrade RTTSrsquo enterprise testing tool that automates the testing of Big Data Data Warehouses and
the ETL testing process QuerySurgetrade is also very effective when testing Data Migrations Database Upgrades System
Upgrades and Interface Testing QuerySurgetrade ensures that the data extracted from sources remains intact in the target
by analyzing and pinpointing any differences
This QuickStart Guide is not meant to be an all-inclusive guide but is targeted at providing you with an overview of
QuerySurgetrade and some of the key functionality provided Additional information regarding other features in
QuerySurgetrade can be found in the online Help
Resources
QuerySurgetrade Help is built into the product and provides immediate answers to questions that arise as you work
with QuerySurgetrade Help can be found in the top toolbar in text form or in the bottom panel by the Help icon
QuerySurgetrade Chat can be accessed through the QuerySurgetrade product or on the QuerySurgetrade web site Experts
are available Monday to Friday from 900am to 500pm Eastern Time (New York) to assist you with questions regarding
installation configuration and usage of the QuerySurgetrade testing tool Chat can also be used during off hours to leave
text questions or comments
Video Library provides tutorials demos and webinars on the ins and outs of QuerySurgetrade usage
httpwwwquerysurgecomproduct-tourvideo-library
Contact Us page provides a form where you can submit comments questions or suggestions
httpwwwquerysurgecomcompanycontact-us
Documentation
System Requirements Guide ndash hardware and software needed to minimally and optimally run
QuerySurgetrade
Installation Guide for Windows
Configuration Guides (Most of these configurations are automated in the lsquoSetup Wizardrsquo within
QuerySurgetrade)
o Configuring A Connection To IBM DB2
o Configuring A Connection To A Delimited Flat File
o Configuring A Connection To A Fixed-Width Flat File
o Configuring A Connection To Oracle
o Configuring A Connection to Teradata
o Configuring a Connection to SQL Server
o Configuring A Connection To SQL Server With Windows Authentication
o Configuring A Connection To IBM Netezza
QuickStart User Guide (this document)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
5
Understanding QuerySurgetrade
Data Warehouse Testing
Comprehensive testing of a data warehouse at every point throughout the ETL (extract transform and load)
process is becoming increasingly important as more data is being collected and used for strategic decision-
making
Data warehouse projects are undertaken as a result of mergers and acquisitions compliance and regulations
data consolidation and the increased reliance on data-driven decision making (using Business Intelligence tools
etc)
Any way you slice it the data warehousebusiness intelligence (BI) platform is complex and presents many data
quality and testing problems to overcome Some of the main challenges of data warehouse testing are
Data Completeness Verifying that all data has been loaded from the sources to the target data
warehouse
Data Transformation Ensuring that all data has been transformed correctly during the ETL process
Data Quality Ensuring that the ETL process correctly rejects corrects ignores substitutes default
values and reports invalid data
Regression Testing Ensuring existing functionality remains intact each time a new release of code is
completed
QuerySurgetrade is a test tool that automates data warehouse and ETL testing QuerySurgetrade verifies data
completeness correct transformation logic ensures data quality and provides for regression testing of upwards
of 100 of all data QuerySurgetrade has five different modules
1) Design Library
Use the QuerySurgetrade lsquoDesign Libraryrsquo tools to create collections of powerful tests across your data warehouse
architecture
Create test QueryPairs between any two points (Source Staging Data Warehouse Data Mart) in your
architecture
See query history for all of your queries
Run QueryPair executions as you build queries to ensure they produce the required results
Make your design flexible with Reusable Query Snippets - Snippet libraries of query fragments that you
can use to modularize your queries helping to speed up the process of bulk QueryPair updates
Run the Query Wizard which provide information for (1) row count compares (2) full table compares
and (3) column compares without writing any SQL code
2) Scheduling
Schedule your testing by time and location for maximum productivity Schedule your tests for the specific
time and day or run tests when an event like the ETL process completes
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
6
Mix-and-match test QueryPairs in QuerySurgetrade Test Suites to meet specific project execution goals
Build groups of QuerySurgetrade Test Suites to test specific mappings ETL logic or data warehouse sources
Build QuerySurgetrade Scenarios for scheduling your execution runs at specific dates and times
Use the execution API for event-based scheduling
3) Run Dashboard
Visualize and track the real-time progress of your running Scenarios on the QuerySurgetrade lsquoRun Dashboardrsquo A
graphical display helps you to follow the flow of your queries and you can drill-down to see test details and
data failures
View query execution progress live via graphical run status displays
Drill-down into data as QuerySurgetrade executes to examine results as they become available during
execution
See real-time statistics for each QueryPair executed and for the Scenario execution as a whole
Alert your team about the status of execution via custom email notifications
Export detailed results in Excel CSV or XML formats to share with team members and other project
stakeholders
4) Reporting
Get a comprehensive audit and share detailed results with others Use QuerySurgetrade reports to share both high-
level and detailed views of your testing with team members managers and business stakeholders
Choose from a wide selection of configurable reports within the QuerySurgetrade lsquoReporting Centerrsquo
Built-in reports range from high-level summary reports to lower-level detailed reports with a complete
audit trail of test modifications
Configure reports for specific date ranges asset types or specific executions to get a view into your
results that you need
Export your reports as Excel or PDF files to share within your organization or to archive for future audit
needs
5) Administration
The administration module provides access to the control features of your QuerySurgetrade installation Here you
have the ability to create and manage user profiles database connections Agent configuration data archiving
and automated email notification options
Create and manage QuerySurgetrade users and Agents
Manage QuerySurgetrade data storage with the included storage tools
Create and manage connections to source and target data stores
View QuerySurgetrade server information including configuration settings and your application licensing details
Create automated email notifications to send results to your team at the end of a test run
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
7
The QuerySurgetrade Testing Process
Testing and validating the ETL process is the key component to the success of a data warehouse
implementation Bad data caused by defects in the ETL process can cause data problems in reporting that can
result in poor strategic decision making
Example A large fast food company depends on BI reports to determine how much raw beef to order on a
monthly basis by sales region and time of year If these reports are not correct then the company could order
an incorrect amount which could cost the company millions of dollars in either lost revenue or wasted product
Developers utilize ETL tools to accomplish the extracting transformation and loading of data from sources into
target systems
Test Points and ETL Legs
bull An lsquoETL Legrsquo refers to a single ETL process that movestransforms data between two discrete points in the data
warehouse architecture
bull A full ETL process may have multiple legs
bull Test points and single ETL leg the verification is between the source and the target for that leg
Example An operational source database (source test point) is extracted transformed and loaded into a data
warehouse (target test point) Testing is conducted across this ETL leg
bull Test points and multiple ETL legs The multi Leg approach is to validate multiple legs of the ETL process in a
single test lsquojumping overrsquo ETL legs in the process A typical multi Leg test is to validate the entire ETL process
from data sources to final data endpoint utilizing test points only at the data sources and at the final data
endpoint
Data Mapping Document
A data mapping document frequently called a source-to-target map is the most important artifact when testing
a data warehouse and is generally created in an Excel spreadsheet or Word document The mapping document
acts as a central part of the functional requirements Testers use the mapping document to verify that the data
has been extracted from the source databases and files into the target data warehouse and data marts
correctly and that the transformations have been performed according to the specifications detailed in the
mapping document The following information is contained within the mapping document
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
8
QuerySurgetrade The Process in a Nutshell
Review mapping document
Determine the optimum percent of coverage or amount of data that is required to be tested based upon time
and resources
If not testing 100 of the data determine the exact sampling of data needed
Create test cases that exercise the requirements of the mapping document
Create pairs of SQL queries (QueryPairs) ndash one aimed at the source database or file one at the target data
warehouse or data mart
Bundle groups of QueryPairs (Test Suites) into test Scenarios
Schedule Scenarios to run (a) immediately (b) at a certain day and time or (c) automatically after an event
Analyze and drill down into your results and identify bad data and data defects with our robust reporting engine
Report defects in your defect tracking tool (ie HP Quality Center IBM Rational Quality Manager Jira Bugzilla
etc)
Have reports sent automatically via email to team members
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
9
About the QuerySurgetrade Architecture
QuerySurgetrade is a locally installed browser-based testing tool Supporting all current browsers (Chrome Firefox IE
Safari etc) QuerySurgetrade is perfect for teams that are geographically distributed QuerySurgetrade extracts the data-
under-test to its own separate
infrastructure which eliminates processing
overhead on the source and target database
servers in your data warehouse
architecture The QuerySurgetrade architecture
is comprised of an application server
database server and Agents
QuerySurgetrade Application Server and
Database
QuerySurgetrade utilizes a Tomcat application
server and a MySQL database The database
is bundled with and embedded within the
product
QuerySurgetrade Agents
QuerySurgetrade Agents are the components of the architecture that execute queries against source and target data
sources returning the results to the QuerySurgetrade database The Agents execute SQL queries validating each piece of
data throughout the ETL process This exposes all data mismatch failures row count differences and column type
mismatch failures affording you the ability to test to 100 of your data quickly
Although the Agents issue queries to both the source and target databases they do not reside on the physical source or
target database boxes QuerySurgetrade Agents can be deployed on the same box as the QuerySurgetrade Application Server
and QuerySurgetrade Database Server in a single box install or on any ldquosatelliterdquo boxes in the environment (often these are
test lab boxes or available desktop boxes) The QuerySurgetrade Agent when it receives a bundle of queries can run
multiple queries simultaneously (in parallel)
One of the features QuerySurgetrade gives you is the ability to raise your lsquotesting throughputrsquo The idea is to be able to fire
off QueryPairs in bulk against your sources and targets so that you can execute at the highest level your environment
can support The QuerySurgetrade Agent lets you do this because you can deploy multiple Agents in your environment ndash on
lsquosatellitersquo boxes surrounding your QuerySurgetrade server (note that each Agent can run multiple query threads as well)
QuerySurgetrade allows you to install up to 10 Agents
More Agents = more queries = more throughput
How many Agents are appropriate for your environment The answer is ndash you find out by experimentation Once you
have built an initial test library start with 2 or 3 Agents and see how your sources and targets behave Add additional
Agents in a subsequent cycle again monitoring the source and target behavior As you continue to add Agents the loads
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
10
on sources and targets will grow with query volume ndash and sourcetarget response times will start to grow as well Once
you have identified the level where response times have started to increase back down to the previous level This level
is roughly the maximum throughput your current environment can support
For more information on Agents please visit AdministrationAgents in the Help guide
Database Data Warehouse Support
In principle QuerySurgetrade can support any JDBC-compliant data source QuerySurgetrade currently ships with Oracle
MySQL Teradata Aster SQL Server DB2 Informix Netezza Sybase in-memory database and flat file support and
supports many other data sources
Installation Requirements
For a trial installation the QuerySurgetrade application server the QuerySurgetrade database server and QuerySurgetrade Agents
may be installed either on a single box or on separate boxes Minimum requirements for a single box installation are 4
GB of memory and 100 GB of disk space More memory and disk space will always provide better performance
Deploying to a distributed environment with multiple boxes or VM images (ie database server on one box app server
on another Agent(s) on other boxes) will have a positive impact on the query size data volume and QuerySurgetrade
performance that can be handled during the trial For additional information on system requirements please refer to
the document QuerySurgetrade System Requirements
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
11
QuerySurgetrade Terminology
QueryPair
A pair of SQL queries where one query retrieves data from a source file or database and
another SQL query that retrieves data from a target database data warehouse or data mart
Agent
Performs the actual query tasks Agents execute queries against source and target data stores and return
the results to the QuerySurgetrade database
Design-Time Run
Allows you to execute a QueryPair test to make sure that it behaves as you expect This is not intended for
actual test execution purposes
Query Snippet
Reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet is to
minimize the number of places you need to make changes on the same code in different SQL calls
Test Suite
A collection of QueryPairs used for execution This feature allows you to group your QueryPairs execution
purposes that is independent of your lsquoDesign Libraryrsquo organization
Scenarios
A collection of Suites that are scheduled for execution
Query Wizard
A tool that allows you to generate QueryPairs automatically requiring no SQL coding It is a fast and easy
way to create QueryPairs for both manual testers who do not have SQL skills as well as for testers who are
skilled at SQL and want to speed up test authoring The Query Wizard generates tests that can cover about
80 of all data in a data warehouse automatically 1
Widgets
Project Widgets give you a real-time view into your project progress at all levels from QueryPair
development to execution and results
Command Line Integration
Provides the ability to schedule Test Suites to run using Windows Task Scheduler or integrate with a
continuous build system
1 A recent poll conducted by RTTS on targeted LinkedIn groups found that 80 of columns in data warehouse tables have no transformations
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
12
QuerySurgetrade
QuickStart Guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
13
Login to QuerySurgetrade
Upon QuerySurgetrade installation one Administrative user is created for you to get started
1 On the installation machine click the lsquoStartrsquo button
2 In the lsquoStartrsquo menu select All Programs QuerySurgetrade Launch QuerySurgetrade
3 QuerySurgetrade will launch in your default browser
4 Enter Username ldquoadminrdquo and password ldquoadminrdquo and click the lsquoLoginrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
14
Create a QueryPair test from scratch
A QueryPair is what QuerySurgetrade refers to as a pair of queries that have the following characteristics
o One SQL query that retrieves data from a source file or database and o Another SQL query that retrieves data from a target big data store data warehouse data mart or database
These two queries together comprise a QueryPair
1 Click the lsquoQueryPairsrsquo folder in the lsquoDesign Libraryrsquo panel
2 Click the lsquoCreate New QueryPairrsquo button
3 Enter ldquoMy Test QueryPairrdquo in the lsquoQueryPair Namersquo field and enter ldquoMy first QueryPairrdquo in the lsquoDescriptionrsquo field
Points of interest
o The lsquoCreate a New QueryPairrsquo dialog contains
QueryPair Name field ndash a name for your QueryPair
Description field ndash a description for your QueryPair
Mapping field ndash for reference back to a mapping document if applicable (Data mapping is a
process used in data warehousing by which different data models are linked to each other
Mappings are typically used for transformations in the ETL process or for consolidation of
multiple databases and or redundant columns )
4 Click the lsquoSaversquo button on the lsquoCreate New QueryPairrsquo dialog and the new QueryPair tab will open
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
15
Points of interest
o The lsquoQueryPairrsquo tab contains
lsquoSourcersquo and lsquoConnectionrsquo ndash for storing the source query with a connection
lsquoTargetrsquo and lsquoConnectionrsquo ndash for storing the target query with a connection
lsquoSaversquo icons ndash for saving the source or target query
5 Enter your SQL in the lsquoSourcersquo query text lsquoEditorrsquo (copypaste will work)
6 Select your source DB from the source lsquoConnectionrsquo drop-down
7 Enter your SQL in the lsquoTargetrsquo query text lsquoEditorrsquo (copypaste will work)
8 Select your target DB from the target lsquoConnectionrsquo drop-down
Points of interest
o In the screenshot above lsquocountryNamersquo is the column name in the source COUNTRYISO table
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
16
o In the screenshot above lsquocountryNamersquo is the column name in the target lsquoCountryrsquo table (same name in
both source and target)
o For demonstration purposes both columns were aliased to lsquoCountryrsquo QuerySurgetrade does not require
both source and target columns to be named the same (although this is a best practice) however the
columns need to be in the same logical order between source and target
9 Click the lsquoSaversquo icon on both the source and target queries
For more information on QueryPairs please visit Design LibraryQueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
17
Review of QuerySurgetrade Agent and Agent Status
QuerySurgetrade Agents perform the actual query tasks Agents execute queries against source and target data stores and return the results to QuerySurgetrade When you install a QuerySurgetrade Agent the installer will ask you for the URL of your QuerySurgetrade installation The installer will then install and start the Agent When the Agent starts it will check its registration status with QuerySurgetrade and it will auto-register if necessary
1 Agent status can be determined visually via the Agent icon in the bottom right of the GUI
Points of interest
o Agent icon appears red on bottom when busy
o Agent icon appears yellow on bottom when idle
o Agent icon appears gray on bottom when offline
o Mouse-over the Agent icon to reveal the status of all Agents
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
18
2 Click the Agent icon to open an lsquoAgent Activityrsquo window
Points of interest
o The lsquoAgent Activityrsquo window contains
Hostname ndash the names of all Agents that have been added
Status ndash Agents can be Idle Offline or Running a Scenario
Last Ping ndash date and time the Agent last communicated with QuerySurgetrade Active Agents
display a checked green symbol inactive Agents display an Xrsquod red symbol
Additional points
o You may install multiple QuerySurgetrade Agents up to the number that your license permits
o Each QuerySurgetrade Agent deployed in your environment needs at least one JDBC driver to work with
your data sources A JDBC driver is a piece of software that allows your Agent to talk to a data source
So for example if you plan to use QuerySurgetrade with Oracle and Teradata you will need to install both
the Oracle and the Teradata drivers with each Agent
o The QuerySurgetrade Installer comes bundled with JDBC drivers for several industry-standard databases
and you can install these drivers when you install the Agent
o You can always add new drivers using the installer after you have installed an Agent
o Your JDBC driver product may not be bundled with QuerySurgetrade if not you will have to deploy the
JDBC driver(s) manually to the Agent machine For more information see Adding JDBC Drivers
o QuerySurgetrade Agent installs as a service by default
For more information on Agents please visit AdministrationAgents in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
19
Design-Time Run execution of an existing QueryPair test
The lsquoDesign-Time Runrsquo tab displays detailed results for each QueryPair This tab allows you to execute a QueryPair test
run to make sure that it behaves as you expect This is not intended for actual testing execution purposes
1 Click on the + next to the lsquoQueryPairsrsquo folder on the left to expand the folder
Points of interest
o QuerySurgetrade utilizes a folder structure similar to Microsoft Windows Explorer
o Multiple sub-folders can be contained within folders
o QueryPairs are contained within each folder
2 Double-click your QueryPair to open it
Points of interest
A QueryPair has the following tabs
o The lsquoQueryPairrsquo tab contains
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
20
lsquoSource Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoTarget Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoSaversquo icons ndash for saving the source or target query
o The lsquoPropertiesrsquo tab contains
QueryPair name description and mapping fields
Data Type Checking ndash Ability to check data types or convert all types to varchar (String)
before comparison
Row Count Options ndash to set reporting for row count differences
Key Column Definition ndash to set a column from either the source or target query as key
Row Duplicate Options ndash to set whether or not QuerySurgetrade checks for duplicate rows
o The lsquoDesign-Time Runrsquo tab contains
Detailed results for each QueryPair This tab allows you to execute a QueryPair test run to
make sure that it behaves as you expect
o The lsquoHistoryrsquo tab shows the history of changes to the QueryPair
o The lsquoDTR Historyrsquo tab shows passfail information from previous lsquoDesign-Time Runsrsquo (currently
empty as no runs have been executed yet)
3 Click the lsquoDesign-Time Runrsquo tab
Points of interest
o The lsquoDesign-Time Runrsquo tab allows you to execute a test run to make sure that the QueryPair behaves as
you expect (not for actual testing execution purposes)
o The first time clicking on the rsquoDesign-Time Runrsquo will indicate that a run has not occurred previously for a
QueryPair
o A specific Agent if desired can be selected in the drop down menu (not required )
o Once you perform a lsquoDesign-Time Runrsquo the most recent results will always display here
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
21
4 Click the lsquoRunrsquo button to execute the QueryPair
Points of interest
o When executing a lsquoDesign-Time Runrsquo QuerySurgetrade goes through the following phases
Loading ndash QuerySurgetrade is loading the SQL pairs onto the Agent for execution
Running ndash The Agent is running the target and source queries
Analyzing ndash QuerySurgetrade is comparing the results
o QuerySurgetrade displays the following information about the last lsquoDesign-Time Runrsquo
Source Rows ndash number of source rows returned
Target Rows ndash number of target rows returned
Row Count Difference ndash number of rows different between source and target
Failed Row Count ndash number of rows with data differences
Non-Matching Source Rows ndash number of source rows not found in the target (based on key
column(s))
Non-Matching Target Rows ndash number of target rows not found in the source (based on key
column(s))
o lsquoConnectionsrsquo and lsquoQuery Performancersquo metrics are displayed
5 Click the lsquoView Query Resultsrsquo button to bring up the results window
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
22
Points of interest
o The lsquoQueryPair Resultsrsquo window contains five tabs
Source Tab ndash displays the source result rows
Target Tab ndash displays the target result rows
Failures Tab ndash displays data failures (not populated in this example as no rows failed)
Source Query Tab ndash displays the source query
Target Query Tab ndash displays the target query
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
23
Create a Reusable Query Snippet
A query Snippet is a reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet
is to minimize the number of places you need to make changes on the same code in different SQL calls A Snippet does
not have to be a syntactically intact query (for example it might just be a WHERE clause) but there is no reason why it
canrsquot be a complete query (eg a reusable sub-query) This feature lets you develop libraries of lsquoReusable Query
Snippetsrsquo to be reused in multiple queries If a Snippet shared by multiple queries needs to change you can make the
change once and all of the queries using the Snippet are changed automatically
To create a lsquoReusable Query Snippetrsquo
1 Click the lsquoReusable Query Snippetsrsquo folder in the lsquoDesign Libraryrsquo
2 Click the lsquoCreate New Reusable Query Snippetrsquo button
3 Enter ldquoMy Test Snippetrdquo in the lsquoReusable Query Snippet Namersquo field and enter ldquoMy first reusable query snippetrdquo
in the lsquoDescriptionrsquo field
4 Click the lsquoSaversquo button on the lsquoCreate New Reusable Query Snippetrsquo dialog
5 Enter your SQL in the lsquoReusable Query Snippetrsquo text lsquoEditorrsquo (copypaste will work)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
24
Points of interest
o A lsquoReusable Query Snippetrsquo has the following tabs
Reusable Query ndash where the SQL resides
Properties ndash for additional descriptive information and metadata
History ndash shows the history of changes made to the Snippet
Appearances ndash shows which QueryPairs contain the Snippet
6 Click the lsquoSaversquo button to save your lsquoReusable Query Snippetrsquo
7 The newly created lsquoReusable Query Snippetrsquo is added to the lsquoDesign Libraryrsquo and is now available for use
Adding a lsquoReusable Query Snippetrsquo to a QueryPair
1 Open the ldquoMy Test QueryPairrdquo previously created
2 Place your cursor within the existing SQL query where you would like to add the Snippet
3 Click the lsquoAdd Reusable Query Snippetrsquo button
4 Click the lsquoReusable Query Snippetsrsquo folder on the left panel
5 Select lsquoMy Test Snippetrsquo in the top right panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
25
Points of interest
o The left panel utilizes a folder structure similar to Microsoft Windows Explorer (your Snippet is saved
in the root folder but can be grouped by subfolders manually)
o The top right pane displays the lsquoReusable Query Snippetsrsquo including the one you created earlier
o The bottom right panel displays the SQL of the selected Snippet
6 Click the lsquoOKrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
3
Table of Contents
About QuerySurgetrade helliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphellip2
Welcome to QuerySurgetrade 4
Understanding QuerySurgetrade 5
The QuerySurgetrade Testing Process 7
About the QuerySurgetrade Architecture 9
QuerySurgetrade Terminology 11
QuickStart Walkthrough 12
Login to QuerySurgetrade 12
Create a QueryPair test from scratch 14
Review of QuerySurgetrade Agent and Agent Status 17
Design-Time Run execution of an existing QueryPair test 19
Create a Reusable Query Snippet 23
Review of a failed QueryPair 27
Creating a Test Suite 29
Creating a Scheduled Execution Scenario 32
Running Reports 37
Query Wizard 39
Review of Data Health Dashboard helliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphelliphellip45
Automated Email Notifications 458
Command Line Integration 51
Troubleshooting Common Issues 54
Things to do next 62
About RTTS (developers of QuerySurgetrade) 63
About QuerySurgetrade 63
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
4
Welcome to QuerySurgetrade
Welcome to QuerySurgetrade RTTSrsquo enterprise testing tool that automates the testing of Big Data Data Warehouses and
the ETL testing process QuerySurgetrade is also very effective when testing Data Migrations Database Upgrades System
Upgrades and Interface Testing QuerySurgetrade ensures that the data extracted from sources remains intact in the target
by analyzing and pinpointing any differences
This QuickStart Guide is not meant to be an all-inclusive guide but is targeted at providing you with an overview of
QuerySurgetrade and some of the key functionality provided Additional information regarding other features in
QuerySurgetrade can be found in the online Help
Resources
QuerySurgetrade Help is built into the product and provides immediate answers to questions that arise as you work
with QuerySurgetrade Help can be found in the top toolbar in text form or in the bottom panel by the Help icon
QuerySurgetrade Chat can be accessed through the QuerySurgetrade product or on the QuerySurgetrade web site Experts
are available Monday to Friday from 900am to 500pm Eastern Time (New York) to assist you with questions regarding
installation configuration and usage of the QuerySurgetrade testing tool Chat can also be used during off hours to leave
text questions or comments
Video Library provides tutorials demos and webinars on the ins and outs of QuerySurgetrade usage
httpwwwquerysurgecomproduct-tourvideo-library
Contact Us page provides a form where you can submit comments questions or suggestions
httpwwwquerysurgecomcompanycontact-us
Documentation
System Requirements Guide ndash hardware and software needed to minimally and optimally run
QuerySurgetrade
Installation Guide for Windows
Configuration Guides (Most of these configurations are automated in the lsquoSetup Wizardrsquo within
QuerySurgetrade)
o Configuring A Connection To IBM DB2
o Configuring A Connection To A Delimited Flat File
o Configuring A Connection To A Fixed-Width Flat File
o Configuring A Connection To Oracle
o Configuring A Connection to Teradata
o Configuring a Connection to SQL Server
o Configuring A Connection To SQL Server With Windows Authentication
o Configuring A Connection To IBM Netezza
QuickStart User Guide (this document)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
5
Understanding QuerySurgetrade
Data Warehouse Testing
Comprehensive testing of a data warehouse at every point throughout the ETL (extract transform and load)
process is becoming increasingly important as more data is being collected and used for strategic decision-
making
Data warehouse projects are undertaken as a result of mergers and acquisitions compliance and regulations
data consolidation and the increased reliance on data-driven decision making (using Business Intelligence tools
etc)
Any way you slice it the data warehousebusiness intelligence (BI) platform is complex and presents many data
quality and testing problems to overcome Some of the main challenges of data warehouse testing are
Data Completeness Verifying that all data has been loaded from the sources to the target data
warehouse
Data Transformation Ensuring that all data has been transformed correctly during the ETL process
Data Quality Ensuring that the ETL process correctly rejects corrects ignores substitutes default
values and reports invalid data
Regression Testing Ensuring existing functionality remains intact each time a new release of code is
completed
QuerySurgetrade is a test tool that automates data warehouse and ETL testing QuerySurgetrade verifies data
completeness correct transformation logic ensures data quality and provides for regression testing of upwards
of 100 of all data QuerySurgetrade has five different modules
1) Design Library
Use the QuerySurgetrade lsquoDesign Libraryrsquo tools to create collections of powerful tests across your data warehouse
architecture
Create test QueryPairs between any two points (Source Staging Data Warehouse Data Mart) in your
architecture
See query history for all of your queries
Run QueryPair executions as you build queries to ensure they produce the required results
Make your design flexible with Reusable Query Snippets - Snippet libraries of query fragments that you
can use to modularize your queries helping to speed up the process of bulk QueryPair updates
Run the Query Wizard which provide information for (1) row count compares (2) full table compares
and (3) column compares without writing any SQL code
2) Scheduling
Schedule your testing by time and location for maximum productivity Schedule your tests for the specific
time and day or run tests when an event like the ETL process completes
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
6
Mix-and-match test QueryPairs in QuerySurgetrade Test Suites to meet specific project execution goals
Build groups of QuerySurgetrade Test Suites to test specific mappings ETL logic or data warehouse sources
Build QuerySurgetrade Scenarios for scheduling your execution runs at specific dates and times
Use the execution API for event-based scheduling
3) Run Dashboard
Visualize and track the real-time progress of your running Scenarios on the QuerySurgetrade lsquoRun Dashboardrsquo A
graphical display helps you to follow the flow of your queries and you can drill-down to see test details and
data failures
View query execution progress live via graphical run status displays
Drill-down into data as QuerySurgetrade executes to examine results as they become available during
execution
See real-time statistics for each QueryPair executed and for the Scenario execution as a whole
Alert your team about the status of execution via custom email notifications
Export detailed results in Excel CSV or XML formats to share with team members and other project
stakeholders
4) Reporting
Get a comprehensive audit and share detailed results with others Use QuerySurgetrade reports to share both high-
level and detailed views of your testing with team members managers and business stakeholders
Choose from a wide selection of configurable reports within the QuerySurgetrade lsquoReporting Centerrsquo
Built-in reports range from high-level summary reports to lower-level detailed reports with a complete
audit trail of test modifications
Configure reports for specific date ranges asset types or specific executions to get a view into your
results that you need
Export your reports as Excel or PDF files to share within your organization or to archive for future audit
needs
5) Administration
The administration module provides access to the control features of your QuerySurgetrade installation Here you
have the ability to create and manage user profiles database connections Agent configuration data archiving
and automated email notification options
Create and manage QuerySurgetrade users and Agents
Manage QuerySurgetrade data storage with the included storage tools
Create and manage connections to source and target data stores
View QuerySurgetrade server information including configuration settings and your application licensing details
Create automated email notifications to send results to your team at the end of a test run
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
7
The QuerySurgetrade Testing Process
Testing and validating the ETL process is the key component to the success of a data warehouse
implementation Bad data caused by defects in the ETL process can cause data problems in reporting that can
result in poor strategic decision making
Example A large fast food company depends on BI reports to determine how much raw beef to order on a
monthly basis by sales region and time of year If these reports are not correct then the company could order
an incorrect amount which could cost the company millions of dollars in either lost revenue or wasted product
Developers utilize ETL tools to accomplish the extracting transformation and loading of data from sources into
target systems
Test Points and ETL Legs
bull An lsquoETL Legrsquo refers to a single ETL process that movestransforms data between two discrete points in the data
warehouse architecture
bull A full ETL process may have multiple legs
bull Test points and single ETL leg the verification is between the source and the target for that leg
Example An operational source database (source test point) is extracted transformed and loaded into a data
warehouse (target test point) Testing is conducted across this ETL leg
bull Test points and multiple ETL legs The multi Leg approach is to validate multiple legs of the ETL process in a
single test lsquojumping overrsquo ETL legs in the process A typical multi Leg test is to validate the entire ETL process
from data sources to final data endpoint utilizing test points only at the data sources and at the final data
endpoint
Data Mapping Document
A data mapping document frequently called a source-to-target map is the most important artifact when testing
a data warehouse and is generally created in an Excel spreadsheet or Word document The mapping document
acts as a central part of the functional requirements Testers use the mapping document to verify that the data
has been extracted from the source databases and files into the target data warehouse and data marts
correctly and that the transformations have been performed according to the specifications detailed in the
mapping document The following information is contained within the mapping document
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
8
QuerySurgetrade The Process in a Nutshell
Review mapping document
Determine the optimum percent of coverage or amount of data that is required to be tested based upon time
and resources
If not testing 100 of the data determine the exact sampling of data needed
Create test cases that exercise the requirements of the mapping document
Create pairs of SQL queries (QueryPairs) ndash one aimed at the source database or file one at the target data
warehouse or data mart
Bundle groups of QueryPairs (Test Suites) into test Scenarios
Schedule Scenarios to run (a) immediately (b) at a certain day and time or (c) automatically after an event
Analyze and drill down into your results and identify bad data and data defects with our robust reporting engine
Report defects in your defect tracking tool (ie HP Quality Center IBM Rational Quality Manager Jira Bugzilla
etc)
Have reports sent automatically via email to team members
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
9
About the QuerySurgetrade Architecture
QuerySurgetrade is a locally installed browser-based testing tool Supporting all current browsers (Chrome Firefox IE
Safari etc) QuerySurgetrade is perfect for teams that are geographically distributed QuerySurgetrade extracts the data-
under-test to its own separate
infrastructure which eliminates processing
overhead on the source and target database
servers in your data warehouse
architecture The QuerySurgetrade architecture
is comprised of an application server
database server and Agents
QuerySurgetrade Application Server and
Database
QuerySurgetrade utilizes a Tomcat application
server and a MySQL database The database
is bundled with and embedded within the
product
QuerySurgetrade Agents
QuerySurgetrade Agents are the components of the architecture that execute queries against source and target data
sources returning the results to the QuerySurgetrade database The Agents execute SQL queries validating each piece of
data throughout the ETL process This exposes all data mismatch failures row count differences and column type
mismatch failures affording you the ability to test to 100 of your data quickly
Although the Agents issue queries to both the source and target databases they do not reside on the physical source or
target database boxes QuerySurgetrade Agents can be deployed on the same box as the QuerySurgetrade Application Server
and QuerySurgetrade Database Server in a single box install or on any ldquosatelliterdquo boxes in the environment (often these are
test lab boxes or available desktop boxes) The QuerySurgetrade Agent when it receives a bundle of queries can run
multiple queries simultaneously (in parallel)
One of the features QuerySurgetrade gives you is the ability to raise your lsquotesting throughputrsquo The idea is to be able to fire
off QueryPairs in bulk against your sources and targets so that you can execute at the highest level your environment
can support The QuerySurgetrade Agent lets you do this because you can deploy multiple Agents in your environment ndash on
lsquosatellitersquo boxes surrounding your QuerySurgetrade server (note that each Agent can run multiple query threads as well)
QuerySurgetrade allows you to install up to 10 Agents
More Agents = more queries = more throughput
How many Agents are appropriate for your environment The answer is ndash you find out by experimentation Once you
have built an initial test library start with 2 or 3 Agents and see how your sources and targets behave Add additional
Agents in a subsequent cycle again monitoring the source and target behavior As you continue to add Agents the loads
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
10
on sources and targets will grow with query volume ndash and sourcetarget response times will start to grow as well Once
you have identified the level where response times have started to increase back down to the previous level This level
is roughly the maximum throughput your current environment can support
For more information on Agents please visit AdministrationAgents in the Help guide
Database Data Warehouse Support
In principle QuerySurgetrade can support any JDBC-compliant data source QuerySurgetrade currently ships with Oracle
MySQL Teradata Aster SQL Server DB2 Informix Netezza Sybase in-memory database and flat file support and
supports many other data sources
Installation Requirements
For a trial installation the QuerySurgetrade application server the QuerySurgetrade database server and QuerySurgetrade Agents
may be installed either on a single box or on separate boxes Minimum requirements for a single box installation are 4
GB of memory and 100 GB of disk space More memory and disk space will always provide better performance
Deploying to a distributed environment with multiple boxes or VM images (ie database server on one box app server
on another Agent(s) on other boxes) will have a positive impact on the query size data volume and QuerySurgetrade
performance that can be handled during the trial For additional information on system requirements please refer to
the document QuerySurgetrade System Requirements
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
11
QuerySurgetrade Terminology
QueryPair
A pair of SQL queries where one query retrieves data from a source file or database and
another SQL query that retrieves data from a target database data warehouse or data mart
Agent
Performs the actual query tasks Agents execute queries against source and target data stores and return
the results to the QuerySurgetrade database
Design-Time Run
Allows you to execute a QueryPair test to make sure that it behaves as you expect This is not intended for
actual test execution purposes
Query Snippet
Reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet is to
minimize the number of places you need to make changes on the same code in different SQL calls
Test Suite
A collection of QueryPairs used for execution This feature allows you to group your QueryPairs execution
purposes that is independent of your lsquoDesign Libraryrsquo organization
Scenarios
A collection of Suites that are scheduled for execution
Query Wizard
A tool that allows you to generate QueryPairs automatically requiring no SQL coding It is a fast and easy
way to create QueryPairs for both manual testers who do not have SQL skills as well as for testers who are
skilled at SQL and want to speed up test authoring The Query Wizard generates tests that can cover about
80 of all data in a data warehouse automatically 1
Widgets
Project Widgets give you a real-time view into your project progress at all levels from QueryPair
development to execution and results
Command Line Integration
Provides the ability to schedule Test Suites to run using Windows Task Scheduler or integrate with a
continuous build system
1 A recent poll conducted by RTTS on targeted LinkedIn groups found that 80 of columns in data warehouse tables have no transformations
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
12
QuerySurgetrade
QuickStart Guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
13
Login to QuerySurgetrade
Upon QuerySurgetrade installation one Administrative user is created for you to get started
1 On the installation machine click the lsquoStartrsquo button
2 In the lsquoStartrsquo menu select All Programs QuerySurgetrade Launch QuerySurgetrade
3 QuerySurgetrade will launch in your default browser
4 Enter Username ldquoadminrdquo and password ldquoadminrdquo and click the lsquoLoginrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
14
Create a QueryPair test from scratch
A QueryPair is what QuerySurgetrade refers to as a pair of queries that have the following characteristics
o One SQL query that retrieves data from a source file or database and o Another SQL query that retrieves data from a target big data store data warehouse data mart or database
These two queries together comprise a QueryPair
1 Click the lsquoQueryPairsrsquo folder in the lsquoDesign Libraryrsquo panel
2 Click the lsquoCreate New QueryPairrsquo button
3 Enter ldquoMy Test QueryPairrdquo in the lsquoQueryPair Namersquo field and enter ldquoMy first QueryPairrdquo in the lsquoDescriptionrsquo field
Points of interest
o The lsquoCreate a New QueryPairrsquo dialog contains
QueryPair Name field ndash a name for your QueryPair
Description field ndash a description for your QueryPair
Mapping field ndash for reference back to a mapping document if applicable (Data mapping is a
process used in data warehousing by which different data models are linked to each other
Mappings are typically used for transformations in the ETL process or for consolidation of
multiple databases and or redundant columns )
4 Click the lsquoSaversquo button on the lsquoCreate New QueryPairrsquo dialog and the new QueryPair tab will open
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
15
Points of interest
o The lsquoQueryPairrsquo tab contains
lsquoSourcersquo and lsquoConnectionrsquo ndash for storing the source query with a connection
lsquoTargetrsquo and lsquoConnectionrsquo ndash for storing the target query with a connection
lsquoSaversquo icons ndash for saving the source or target query
5 Enter your SQL in the lsquoSourcersquo query text lsquoEditorrsquo (copypaste will work)
6 Select your source DB from the source lsquoConnectionrsquo drop-down
7 Enter your SQL in the lsquoTargetrsquo query text lsquoEditorrsquo (copypaste will work)
8 Select your target DB from the target lsquoConnectionrsquo drop-down
Points of interest
o In the screenshot above lsquocountryNamersquo is the column name in the source COUNTRYISO table
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
16
o In the screenshot above lsquocountryNamersquo is the column name in the target lsquoCountryrsquo table (same name in
both source and target)
o For demonstration purposes both columns were aliased to lsquoCountryrsquo QuerySurgetrade does not require
both source and target columns to be named the same (although this is a best practice) however the
columns need to be in the same logical order between source and target
9 Click the lsquoSaversquo icon on both the source and target queries
For more information on QueryPairs please visit Design LibraryQueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
17
Review of QuerySurgetrade Agent and Agent Status
QuerySurgetrade Agents perform the actual query tasks Agents execute queries against source and target data stores and return the results to QuerySurgetrade When you install a QuerySurgetrade Agent the installer will ask you for the URL of your QuerySurgetrade installation The installer will then install and start the Agent When the Agent starts it will check its registration status with QuerySurgetrade and it will auto-register if necessary
1 Agent status can be determined visually via the Agent icon in the bottom right of the GUI
Points of interest
o Agent icon appears red on bottom when busy
o Agent icon appears yellow on bottom when idle
o Agent icon appears gray on bottom when offline
o Mouse-over the Agent icon to reveal the status of all Agents
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
18
2 Click the Agent icon to open an lsquoAgent Activityrsquo window
Points of interest
o The lsquoAgent Activityrsquo window contains
Hostname ndash the names of all Agents that have been added
Status ndash Agents can be Idle Offline or Running a Scenario
Last Ping ndash date and time the Agent last communicated with QuerySurgetrade Active Agents
display a checked green symbol inactive Agents display an Xrsquod red symbol
Additional points
o You may install multiple QuerySurgetrade Agents up to the number that your license permits
o Each QuerySurgetrade Agent deployed in your environment needs at least one JDBC driver to work with
your data sources A JDBC driver is a piece of software that allows your Agent to talk to a data source
So for example if you plan to use QuerySurgetrade with Oracle and Teradata you will need to install both
the Oracle and the Teradata drivers with each Agent
o The QuerySurgetrade Installer comes bundled with JDBC drivers for several industry-standard databases
and you can install these drivers when you install the Agent
o You can always add new drivers using the installer after you have installed an Agent
o Your JDBC driver product may not be bundled with QuerySurgetrade if not you will have to deploy the
JDBC driver(s) manually to the Agent machine For more information see Adding JDBC Drivers
o QuerySurgetrade Agent installs as a service by default
For more information on Agents please visit AdministrationAgents in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
19
Design-Time Run execution of an existing QueryPair test
The lsquoDesign-Time Runrsquo tab displays detailed results for each QueryPair This tab allows you to execute a QueryPair test
run to make sure that it behaves as you expect This is not intended for actual testing execution purposes
1 Click on the + next to the lsquoQueryPairsrsquo folder on the left to expand the folder
Points of interest
o QuerySurgetrade utilizes a folder structure similar to Microsoft Windows Explorer
o Multiple sub-folders can be contained within folders
o QueryPairs are contained within each folder
2 Double-click your QueryPair to open it
Points of interest
A QueryPair has the following tabs
o The lsquoQueryPairrsquo tab contains
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
20
lsquoSource Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoTarget Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoSaversquo icons ndash for saving the source or target query
o The lsquoPropertiesrsquo tab contains
QueryPair name description and mapping fields
Data Type Checking ndash Ability to check data types or convert all types to varchar (String)
before comparison
Row Count Options ndash to set reporting for row count differences
Key Column Definition ndash to set a column from either the source or target query as key
Row Duplicate Options ndash to set whether or not QuerySurgetrade checks for duplicate rows
o The lsquoDesign-Time Runrsquo tab contains
Detailed results for each QueryPair This tab allows you to execute a QueryPair test run to
make sure that it behaves as you expect
o The lsquoHistoryrsquo tab shows the history of changes to the QueryPair
o The lsquoDTR Historyrsquo tab shows passfail information from previous lsquoDesign-Time Runsrsquo (currently
empty as no runs have been executed yet)
3 Click the lsquoDesign-Time Runrsquo tab
Points of interest
o The lsquoDesign-Time Runrsquo tab allows you to execute a test run to make sure that the QueryPair behaves as
you expect (not for actual testing execution purposes)
o The first time clicking on the rsquoDesign-Time Runrsquo will indicate that a run has not occurred previously for a
QueryPair
o A specific Agent if desired can be selected in the drop down menu (not required )
o Once you perform a lsquoDesign-Time Runrsquo the most recent results will always display here
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
21
4 Click the lsquoRunrsquo button to execute the QueryPair
Points of interest
o When executing a lsquoDesign-Time Runrsquo QuerySurgetrade goes through the following phases
Loading ndash QuerySurgetrade is loading the SQL pairs onto the Agent for execution
Running ndash The Agent is running the target and source queries
Analyzing ndash QuerySurgetrade is comparing the results
o QuerySurgetrade displays the following information about the last lsquoDesign-Time Runrsquo
Source Rows ndash number of source rows returned
Target Rows ndash number of target rows returned
Row Count Difference ndash number of rows different between source and target
Failed Row Count ndash number of rows with data differences
Non-Matching Source Rows ndash number of source rows not found in the target (based on key
column(s))
Non-Matching Target Rows ndash number of target rows not found in the source (based on key
column(s))
o lsquoConnectionsrsquo and lsquoQuery Performancersquo metrics are displayed
5 Click the lsquoView Query Resultsrsquo button to bring up the results window
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
22
Points of interest
o The lsquoQueryPair Resultsrsquo window contains five tabs
Source Tab ndash displays the source result rows
Target Tab ndash displays the target result rows
Failures Tab ndash displays data failures (not populated in this example as no rows failed)
Source Query Tab ndash displays the source query
Target Query Tab ndash displays the target query
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
23
Create a Reusable Query Snippet
A query Snippet is a reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet
is to minimize the number of places you need to make changes on the same code in different SQL calls A Snippet does
not have to be a syntactically intact query (for example it might just be a WHERE clause) but there is no reason why it
canrsquot be a complete query (eg a reusable sub-query) This feature lets you develop libraries of lsquoReusable Query
Snippetsrsquo to be reused in multiple queries If a Snippet shared by multiple queries needs to change you can make the
change once and all of the queries using the Snippet are changed automatically
To create a lsquoReusable Query Snippetrsquo
1 Click the lsquoReusable Query Snippetsrsquo folder in the lsquoDesign Libraryrsquo
2 Click the lsquoCreate New Reusable Query Snippetrsquo button
3 Enter ldquoMy Test Snippetrdquo in the lsquoReusable Query Snippet Namersquo field and enter ldquoMy first reusable query snippetrdquo
in the lsquoDescriptionrsquo field
4 Click the lsquoSaversquo button on the lsquoCreate New Reusable Query Snippetrsquo dialog
5 Enter your SQL in the lsquoReusable Query Snippetrsquo text lsquoEditorrsquo (copypaste will work)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
24
Points of interest
o A lsquoReusable Query Snippetrsquo has the following tabs
Reusable Query ndash where the SQL resides
Properties ndash for additional descriptive information and metadata
History ndash shows the history of changes made to the Snippet
Appearances ndash shows which QueryPairs contain the Snippet
6 Click the lsquoSaversquo button to save your lsquoReusable Query Snippetrsquo
7 The newly created lsquoReusable Query Snippetrsquo is added to the lsquoDesign Libraryrsquo and is now available for use
Adding a lsquoReusable Query Snippetrsquo to a QueryPair
1 Open the ldquoMy Test QueryPairrdquo previously created
2 Place your cursor within the existing SQL query where you would like to add the Snippet
3 Click the lsquoAdd Reusable Query Snippetrsquo button
4 Click the lsquoReusable Query Snippetsrsquo folder on the left panel
5 Select lsquoMy Test Snippetrsquo in the top right panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
25
Points of interest
o The left panel utilizes a folder structure similar to Microsoft Windows Explorer (your Snippet is saved
in the root folder but can be grouped by subfolders manually)
o The top right pane displays the lsquoReusable Query Snippetsrsquo including the one you created earlier
o The bottom right panel displays the SQL of the selected Snippet
6 Click the lsquoOKrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
4
Welcome to QuerySurgetrade
Welcome to QuerySurgetrade RTTSrsquo enterprise testing tool that automates the testing of Big Data Data Warehouses and
the ETL testing process QuerySurgetrade is also very effective when testing Data Migrations Database Upgrades System
Upgrades and Interface Testing QuerySurgetrade ensures that the data extracted from sources remains intact in the target
by analyzing and pinpointing any differences
This QuickStart Guide is not meant to be an all-inclusive guide but is targeted at providing you with an overview of
QuerySurgetrade and some of the key functionality provided Additional information regarding other features in
QuerySurgetrade can be found in the online Help
Resources
QuerySurgetrade Help is built into the product and provides immediate answers to questions that arise as you work
with QuerySurgetrade Help can be found in the top toolbar in text form or in the bottom panel by the Help icon
QuerySurgetrade Chat can be accessed through the QuerySurgetrade product or on the QuerySurgetrade web site Experts
are available Monday to Friday from 900am to 500pm Eastern Time (New York) to assist you with questions regarding
installation configuration and usage of the QuerySurgetrade testing tool Chat can also be used during off hours to leave
text questions or comments
Video Library provides tutorials demos and webinars on the ins and outs of QuerySurgetrade usage
httpwwwquerysurgecomproduct-tourvideo-library
Contact Us page provides a form where you can submit comments questions or suggestions
httpwwwquerysurgecomcompanycontact-us
Documentation
System Requirements Guide ndash hardware and software needed to minimally and optimally run
QuerySurgetrade
Installation Guide for Windows
Configuration Guides (Most of these configurations are automated in the lsquoSetup Wizardrsquo within
QuerySurgetrade)
o Configuring A Connection To IBM DB2
o Configuring A Connection To A Delimited Flat File
o Configuring A Connection To A Fixed-Width Flat File
o Configuring A Connection To Oracle
o Configuring A Connection to Teradata
o Configuring a Connection to SQL Server
o Configuring A Connection To SQL Server With Windows Authentication
o Configuring A Connection To IBM Netezza
QuickStart User Guide (this document)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
5
Understanding QuerySurgetrade
Data Warehouse Testing
Comprehensive testing of a data warehouse at every point throughout the ETL (extract transform and load)
process is becoming increasingly important as more data is being collected and used for strategic decision-
making
Data warehouse projects are undertaken as a result of mergers and acquisitions compliance and regulations
data consolidation and the increased reliance on data-driven decision making (using Business Intelligence tools
etc)
Any way you slice it the data warehousebusiness intelligence (BI) platform is complex and presents many data
quality and testing problems to overcome Some of the main challenges of data warehouse testing are
Data Completeness Verifying that all data has been loaded from the sources to the target data
warehouse
Data Transformation Ensuring that all data has been transformed correctly during the ETL process
Data Quality Ensuring that the ETL process correctly rejects corrects ignores substitutes default
values and reports invalid data
Regression Testing Ensuring existing functionality remains intact each time a new release of code is
completed
QuerySurgetrade is a test tool that automates data warehouse and ETL testing QuerySurgetrade verifies data
completeness correct transformation logic ensures data quality and provides for regression testing of upwards
of 100 of all data QuerySurgetrade has five different modules
1) Design Library
Use the QuerySurgetrade lsquoDesign Libraryrsquo tools to create collections of powerful tests across your data warehouse
architecture
Create test QueryPairs between any two points (Source Staging Data Warehouse Data Mart) in your
architecture
See query history for all of your queries
Run QueryPair executions as you build queries to ensure they produce the required results
Make your design flexible with Reusable Query Snippets - Snippet libraries of query fragments that you
can use to modularize your queries helping to speed up the process of bulk QueryPair updates
Run the Query Wizard which provide information for (1) row count compares (2) full table compares
and (3) column compares without writing any SQL code
2) Scheduling
Schedule your testing by time and location for maximum productivity Schedule your tests for the specific
time and day or run tests when an event like the ETL process completes
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
6
Mix-and-match test QueryPairs in QuerySurgetrade Test Suites to meet specific project execution goals
Build groups of QuerySurgetrade Test Suites to test specific mappings ETL logic or data warehouse sources
Build QuerySurgetrade Scenarios for scheduling your execution runs at specific dates and times
Use the execution API for event-based scheduling
3) Run Dashboard
Visualize and track the real-time progress of your running Scenarios on the QuerySurgetrade lsquoRun Dashboardrsquo A
graphical display helps you to follow the flow of your queries and you can drill-down to see test details and
data failures
View query execution progress live via graphical run status displays
Drill-down into data as QuerySurgetrade executes to examine results as they become available during
execution
See real-time statistics for each QueryPair executed and for the Scenario execution as a whole
Alert your team about the status of execution via custom email notifications
Export detailed results in Excel CSV or XML formats to share with team members and other project
stakeholders
4) Reporting
Get a comprehensive audit and share detailed results with others Use QuerySurgetrade reports to share both high-
level and detailed views of your testing with team members managers and business stakeholders
Choose from a wide selection of configurable reports within the QuerySurgetrade lsquoReporting Centerrsquo
Built-in reports range from high-level summary reports to lower-level detailed reports with a complete
audit trail of test modifications
Configure reports for specific date ranges asset types or specific executions to get a view into your
results that you need
Export your reports as Excel or PDF files to share within your organization or to archive for future audit
needs
5) Administration
The administration module provides access to the control features of your QuerySurgetrade installation Here you
have the ability to create and manage user profiles database connections Agent configuration data archiving
and automated email notification options
Create and manage QuerySurgetrade users and Agents
Manage QuerySurgetrade data storage with the included storage tools
Create and manage connections to source and target data stores
View QuerySurgetrade server information including configuration settings and your application licensing details
Create automated email notifications to send results to your team at the end of a test run
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
7
The QuerySurgetrade Testing Process
Testing and validating the ETL process is the key component to the success of a data warehouse
implementation Bad data caused by defects in the ETL process can cause data problems in reporting that can
result in poor strategic decision making
Example A large fast food company depends on BI reports to determine how much raw beef to order on a
monthly basis by sales region and time of year If these reports are not correct then the company could order
an incorrect amount which could cost the company millions of dollars in either lost revenue or wasted product
Developers utilize ETL tools to accomplish the extracting transformation and loading of data from sources into
target systems
Test Points and ETL Legs
bull An lsquoETL Legrsquo refers to a single ETL process that movestransforms data between two discrete points in the data
warehouse architecture
bull A full ETL process may have multiple legs
bull Test points and single ETL leg the verification is between the source and the target for that leg
Example An operational source database (source test point) is extracted transformed and loaded into a data
warehouse (target test point) Testing is conducted across this ETL leg
bull Test points and multiple ETL legs The multi Leg approach is to validate multiple legs of the ETL process in a
single test lsquojumping overrsquo ETL legs in the process A typical multi Leg test is to validate the entire ETL process
from data sources to final data endpoint utilizing test points only at the data sources and at the final data
endpoint
Data Mapping Document
A data mapping document frequently called a source-to-target map is the most important artifact when testing
a data warehouse and is generally created in an Excel spreadsheet or Word document The mapping document
acts as a central part of the functional requirements Testers use the mapping document to verify that the data
has been extracted from the source databases and files into the target data warehouse and data marts
correctly and that the transformations have been performed according to the specifications detailed in the
mapping document The following information is contained within the mapping document
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
8
QuerySurgetrade The Process in a Nutshell
Review mapping document
Determine the optimum percent of coverage or amount of data that is required to be tested based upon time
and resources
If not testing 100 of the data determine the exact sampling of data needed
Create test cases that exercise the requirements of the mapping document
Create pairs of SQL queries (QueryPairs) ndash one aimed at the source database or file one at the target data
warehouse or data mart
Bundle groups of QueryPairs (Test Suites) into test Scenarios
Schedule Scenarios to run (a) immediately (b) at a certain day and time or (c) automatically after an event
Analyze and drill down into your results and identify bad data and data defects with our robust reporting engine
Report defects in your defect tracking tool (ie HP Quality Center IBM Rational Quality Manager Jira Bugzilla
etc)
Have reports sent automatically via email to team members
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
9
About the QuerySurgetrade Architecture
QuerySurgetrade is a locally installed browser-based testing tool Supporting all current browsers (Chrome Firefox IE
Safari etc) QuerySurgetrade is perfect for teams that are geographically distributed QuerySurgetrade extracts the data-
under-test to its own separate
infrastructure which eliminates processing
overhead on the source and target database
servers in your data warehouse
architecture The QuerySurgetrade architecture
is comprised of an application server
database server and Agents
QuerySurgetrade Application Server and
Database
QuerySurgetrade utilizes a Tomcat application
server and a MySQL database The database
is bundled with and embedded within the
product
QuerySurgetrade Agents
QuerySurgetrade Agents are the components of the architecture that execute queries against source and target data
sources returning the results to the QuerySurgetrade database The Agents execute SQL queries validating each piece of
data throughout the ETL process This exposes all data mismatch failures row count differences and column type
mismatch failures affording you the ability to test to 100 of your data quickly
Although the Agents issue queries to both the source and target databases they do not reside on the physical source or
target database boxes QuerySurgetrade Agents can be deployed on the same box as the QuerySurgetrade Application Server
and QuerySurgetrade Database Server in a single box install or on any ldquosatelliterdquo boxes in the environment (often these are
test lab boxes or available desktop boxes) The QuerySurgetrade Agent when it receives a bundle of queries can run
multiple queries simultaneously (in parallel)
One of the features QuerySurgetrade gives you is the ability to raise your lsquotesting throughputrsquo The idea is to be able to fire
off QueryPairs in bulk against your sources and targets so that you can execute at the highest level your environment
can support The QuerySurgetrade Agent lets you do this because you can deploy multiple Agents in your environment ndash on
lsquosatellitersquo boxes surrounding your QuerySurgetrade server (note that each Agent can run multiple query threads as well)
QuerySurgetrade allows you to install up to 10 Agents
More Agents = more queries = more throughput
How many Agents are appropriate for your environment The answer is ndash you find out by experimentation Once you
have built an initial test library start with 2 or 3 Agents and see how your sources and targets behave Add additional
Agents in a subsequent cycle again monitoring the source and target behavior As you continue to add Agents the loads
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
10
on sources and targets will grow with query volume ndash and sourcetarget response times will start to grow as well Once
you have identified the level where response times have started to increase back down to the previous level This level
is roughly the maximum throughput your current environment can support
For more information on Agents please visit AdministrationAgents in the Help guide
Database Data Warehouse Support
In principle QuerySurgetrade can support any JDBC-compliant data source QuerySurgetrade currently ships with Oracle
MySQL Teradata Aster SQL Server DB2 Informix Netezza Sybase in-memory database and flat file support and
supports many other data sources
Installation Requirements
For a trial installation the QuerySurgetrade application server the QuerySurgetrade database server and QuerySurgetrade Agents
may be installed either on a single box or on separate boxes Minimum requirements for a single box installation are 4
GB of memory and 100 GB of disk space More memory and disk space will always provide better performance
Deploying to a distributed environment with multiple boxes or VM images (ie database server on one box app server
on another Agent(s) on other boxes) will have a positive impact on the query size data volume and QuerySurgetrade
performance that can be handled during the trial For additional information on system requirements please refer to
the document QuerySurgetrade System Requirements
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
11
QuerySurgetrade Terminology
QueryPair
A pair of SQL queries where one query retrieves data from a source file or database and
another SQL query that retrieves data from a target database data warehouse or data mart
Agent
Performs the actual query tasks Agents execute queries against source and target data stores and return
the results to the QuerySurgetrade database
Design-Time Run
Allows you to execute a QueryPair test to make sure that it behaves as you expect This is not intended for
actual test execution purposes
Query Snippet
Reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet is to
minimize the number of places you need to make changes on the same code in different SQL calls
Test Suite
A collection of QueryPairs used for execution This feature allows you to group your QueryPairs execution
purposes that is independent of your lsquoDesign Libraryrsquo organization
Scenarios
A collection of Suites that are scheduled for execution
Query Wizard
A tool that allows you to generate QueryPairs automatically requiring no SQL coding It is a fast and easy
way to create QueryPairs for both manual testers who do not have SQL skills as well as for testers who are
skilled at SQL and want to speed up test authoring The Query Wizard generates tests that can cover about
80 of all data in a data warehouse automatically 1
Widgets
Project Widgets give you a real-time view into your project progress at all levels from QueryPair
development to execution and results
Command Line Integration
Provides the ability to schedule Test Suites to run using Windows Task Scheduler or integrate with a
continuous build system
1 A recent poll conducted by RTTS on targeted LinkedIn groups found that 80 of columns in data warehouse tables have no transformations
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
12
QuerySurgetrade
QuickStart Guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
13
Login to QuerySurgetrade
Upon QuerySurgetrade installation one Administrative user is created for you to get started
1 On the installation machine click the lsquoStartrsquo button
2 In the lsquoStartrsquo menu select All Programs QuerySurgetrade Launch QuerySurgetrade
3 QuerySurgetrade will launch in your default browser
4 Enter Username ldquoadminrdquo and password ldquoadminrdquo and click the lsquoLoginrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
14
Create a QueryPair test from scratch
A QueryPair is what QuerySurgetrade refers to as a pair of queries that have the following characteristics
o One SQL query that retrieves data from a source file or database and o Another SQL query that retrieves data from a target big data store data warehouse data mart or database
These two queries together comprise a QueryPair
1 Click the lsquoQueryPairsrsquo folder in the lsquoDesign Libraryrsquo panel
2 Click the lsquoCreate New QueryPairrsquo button
3 Enter ldquoMy Test QueryPairrdquo in the lsquoQueryPair Namersquo field and enter ldquoMy first QueryPairrdquo in the lsquoDescriptionrsquo field
Points of interest
o The lsquoCreate a New QueryPairrsquo dialog contains
QueryPair Name field ndash a name for your QueryPair
Description field ndash a description for your QueryPair
Mapping field ndash for reference back to a mapping document if applicable (Data mapping is a
process used in data warehousing by which different data models are linked to each other
Mappings are typically used for transformations in the ETL process or for consolidation of
multiple databases and or redundant columns )
4 Click the lsquoSaversquo button on the lsquoCreate New QueryPairrsquo dialog and the new QueryPair tab will open
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
15
Points of interest
o The lsquoQueryPairrsquo tab contains
lsquoSourcersquo and lsquoConnectionrsquo ndash for storing the source query with a connection
lsquoTargetrsquo and lsquoConnectionrsquo ndash for storing the target query with a connection
lsquoSaversquo icons ndash for saving the source or target query
5 Enter your SQL in the lsquoSourcersquo query text lsquoEditorrsquo (copypaste will work)
6 Select your source DB from the source lsquoConnectionrsquo drop-down
7 Enter your SQL in the lsquoTargetrsquo query text lsquoEditorrsquo (copypaste will work)
8 Select your target DB from the target lsquoConnectionrsquo drop-down
Points of interest
o In the screenshot above lsquocountryNamersquo is the column name in the source COUNTRYISO table
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
16
o In the screenshot above lsquocountryNamersquo is the column name in the target lsquoCountryrsquo table (same name in
both source and target)
o For demonstration purposes both columns were aliased to lsquoCountryrsquo QuerySurgetrade does not require
both source and target columns to be named the same (although this is a best practice) however the
columns need to be in the same logical order between source and target
9 Click the lsquoSaversquo icon on both the source and target queries
For more information on QueryPairs please visit Design LibraryQueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
17
Review of QuerySurgetrade Agent and Agent Status
QuerySurgetrade Agents perform the actual query tasks Agents execute queries against source and target data stores and return the results to QuerySurgetrade When you install a QuerySurgetrade Agent the installer will ask you for the URL of your QuerySurgetrade installation The installer will then install and start the Agent When the Agent starts it will check its registration status with QuerySurgetrade and it will auto-register if necessary
1 Agent status can be determined visually via the Agent icon in the bottom right of the GUI
Points of interest
o Agent icon appears red on bottom when busy
o Agent icon appears yellow on bottom when idle
o Agent icon appears gray on bottom when offline
o Mouse-over the Agent icon to reveal the status of all Agents
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
18
2 Click the Agent icon to open an lsquoAgent Activityrsquo window
Points of interest
o The lsquoAgent Activityrsquo window contains
Hostname ndash the names of all Agents that have been added
Status ndash Agents can be Idle Offline or Running a Scenario
Last Ping ndash date and time the Agent last communicated with QuerySurgetrade Active Agents
display a checked green symbol inactive Agents display an Xrsquod red symbol
Additional points
o You may install multiple QuerySurgetrade Agents up to the number that your license permits
o Each QuerySurgetrade Agent deployed in your environment needs at least one JDBC driver to work with
your data sources A JDBC driver is a piece of software that allows your Agent to talk to a data source
So for example if you plan to use QuerySurgetrade with Oracle and Teradata you will need to install both
the Oracle and the Teradata drivers with each Agent
o The QuerySurgetrade Installer comes bundled with JDBC drivers for several industry-standard databases
and you can install these drivers when you install the Agent
o You can always add new drivers using the installer after you have installed an Agent
o Your JDBC driver product may not be bundled with QuerySurgetrade if not you will have to deploy the
JDBC driver(s) manually to the Agent machine For more information see Adding JDBC Drivers
o QuerySurgetrade Agent installs as a service by default
For more information on Agents please visit AdministrationAgents in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
19
Design-Time Run execution of an existing QueryPair test
The lsquoDesign-Time Runrsquo tab displays detailed results for each QueryPair This tab allows you to execute a QueryPair test
run to make sure that it behaves as you expect This is not intended for actual testing execution purposes
1 Click on the + next to the lsquoQueryPairsrsquo folder on the left to expand the folder
Points of interest
o QuerySurgetrade utilizes a folder structure similar to Microsoft Windows Explorer
o Multiple sub-folders can be contained within folders
o QueryPairs are contained within each folder
2 Double-click your QueryPair to open it
Points of interest
A QueryPair has the following tabs
o The lsquoQueryPairrsquo tab contains
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
20
lsquoSource Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoTarget Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoSaversquo icons ndash for saving the source or target query
o The lsquoPropertiesrsquo tab contains
QueryPair name description and mapping fields
Data Type Checking ndash Ability to check data types or convert all types to varchar (String)
before comparison
Row Count Options ndash to set reporting for row count differences
Key Column Definition ndash to set a column from either the source or target query as key
Row Duplicate Options ndash to set whether or not QuerySurgetrade checks for duplicate rows
o The lsquoDesign-Time Runrsquo tab contains
Detailed results for each QueryPair This tab allows you to execute a QueryPair test run to
make sure that it behaves as you expect
o The lsquoHistoryrsquo tab shows the history of changes to the QueryPair
o The lsquoDTR Historyrsquo tab shows passfail information from previous lsquoDesign-Time Runsrsquo (currently
empty as no runs have been executed yet)
3 Click the lsquoDesign-Time Runrsquo tab
Points of interest
o The lsquoDesign-Time Runrsquo tab allows you to execute a test run to make sure that the QueryPair behaves as
you expect (not for actual testing execution purposes)
o The first time clicking on the rsquoDesign-Time Runrsquo will indicate that a run has not occurred previously for a
QueryPair
o A specific Agent if desired can be selected in the drop down menu (not required )
o Once you perform a lsquoDesign-Time Runrsquo the most recent results will always display here
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
21
4 Click the lsquoRunrsquo button to execute the QueryPair
Points of interest
o When executing a lsquoDesign-Time Runrsquo QuerySurgetrade goes through the following phases
Loading ndash QuerySurgetrade is loading the SQL pairs onto the Agent for execution
Running ndash The Agent is running the target and source queries
Analyzing ndash QuerySurgetrade is comparing the results
o QuerySurgetrade displays the following information about the last lsquoDesign-Time Runrsquo
Source Rows ndash number of source rows returned
Target Rows ndash number of target rows returned
Row Count Difference ndash number of rows different between source and target
Failed Row Count ndash number of rows with data differences
Non-Matching Source Rows ndash number of source rows not found in the target (based on key
column(s))
Non-Matching Target Rows ndash number of target rows not found in the source (based on key
column(s))
o lsquoConnectionsrsquo and lsquoQuery Performancersquo metrics are displayed
5 Click the lsquoView Query Resultsrsquo button to bring up the results window
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
22
Points of interest
o The lsquoQueryPair Resultsrsquo window contains five tabs
Source Tab ndash displays the source result rows
Target Tab ndash displays the target result rows
Failures Tab ndash displays data failures (not populated in this example as no rows failed)
Source Query Tab ndash displays the source query
Target Query Tab ndash displays the target query
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
23
Create a Reusable Query Snippet
A query Snippet is a reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet
is to minimize the number of places you need to make changes on the same code in different SQL calls A Snippet does
not have to be a syntactically intact query (for example it might just be a WHERE clause) but there is no reason why it
canrsquot be a complete query (eg a reusable sub-query) This feature lets you develop libraries of lsquoReusable Query
Snippetsrsquo to be reused in multiple queries If a Snippet shared by multiple queries needs to change you can make the
change once and all of the queries using the Snippet are changed automatically
To create a lsquoReusable Query Snippetrsquo
1 Click the lsquoReusable Query Snippetsrsquo folder in the lsquoDesign Libraryrsquo
2 Click the lsquoCreate New Reusable Query Snippetrsquo button
3 Enter ldquoMy Test Snippetrdquo in the lsquoReusable Query Snippet Namersquo field and enter ldquoMy first reusable query snippetrdquo
in the lsquoDescriptionrsquo field
4 Click the lsquoSaversquo button on the lsquoCreate New Reusable Query Snippetrsquo dialog
5 Enter your SQL in the lsquoReusable Query Snippetrsquo text lsquoEditorrsquo (copypaste will work)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
24
Points of interest
o A lsquoReusable Query Snippetrsquo has the following tabs
Reusable Query ndash where the SQL resides
Properties ndash for additional descriptive information and metadata
History ndash shows the history of changes made to the Snippet
Appearances ndash shows which QueryPairs contain the Snippet
6 Click the lsquoSaversquo button to save your lsquoReusable Query Snippetrsquo
7 The newly created lsquoReusable Query Snippetrsquo is added to the lsquoDesign Libraryrsquo and is now available for use
Adding a lsquoReusable Query Snippetrsquo to a QueryPair
1 Open the ldquoMy Test QueryPairrdquo previously created
2 Place your cursor within the existing SQL query where you would like to add the Snippet
3 Click the lsquoAdd Reusable Query Snippetrsquo button
4 Click the lsquoReusable Query Snippetsrsquo folder on the left panel
5 Select lsquoMy Test Snippetrsquo in the top right panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
25
Points of interest
o The left panel utilizes a folder structure similar to Microsoft Windows Explorer (your Snippet is saved
in the root folder but can be grouped by subfolders manually)
o The top right pane displays the lsquoReusable Query Snippetsrsquo including the one you created earlier
o The bottom right panel displays the SQL of the selected Snippet
6 Click the lsquoOKrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
5
Understanding QuerySurgetrade
Data Warehouse Testing
Comprehensive testing of a data warehouse at every point throughout the ETL (extract transform and load)
process is becoming increasingly important as more data is being collected and used for strategic decision-
making
Data warehouse projects are undertaken as a result of mergers and acquisitions compliance and regulations
data consolidation and the increased reliance on data-driven decision making (using Business Intelligence tools
etc)
Any way you slice it the data warehousebusiness intelligence (BI) platform is complex and presents many data
quality and testing problems to overcome Some of the main challenges of data warehouse testing are
Data Completeness Verifying that all data has been loaded from the sources to the target data
warehouse
Data Transformation Ensuring that all data has been transformed correctly during the ETL process
Data Quality Ensuring that the ETL process correctly rejects corrects ignores substitutes default
values and reports invalid data
Regression Testing Ensuring existing functionality remains intact each time a new release of code is
completed
QuerySurgetrade is a test tool that automates data warehouse and ETL testing QuerySurgetrade verifies data
completeness correct transformation logic ensures data quality and provides for regression testing of upwards
of 100 of all data QuerySurgetrade has five different modules
1) Design Library
Use the QuerySurgetrade lsquoDesign Libraryrsquo tools to create collections of powerful tests across your data warehouse
architecture
Create test QueryPairs between any two points (Source Staging Data Warehouse Data Mart) in your
architecture
See query history for all of your queries
Run QueryPair executions as you build queries to ensure they produce the required results
Make your design flexible with Reusable Query Snippets - Snippet libraries of query fragments that you
can use to modularize your queries helping to speed up the process of bulk QueryPair updates
Run the Query Wizard which provide information for (1) row count compares (2) full table compares
and (3) column compares without writing any SQL code
2) Scheduling
Schedule your testing by time and location for maximum productivity Schedule your tests for the specific
time and day or run tests when an event like the ETL process completes
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
6
Mix-and-match test QueryPairs in QuerySurgetrade Test Suites to meet specific project execution goals
Build groups of QuerySurgetrade Test Suites to test specific mappings ETL logic or data warehouse sources
Build QuerySurgetrade Scenarios for scheduling your execution runs at specific dates and times
Use the execution API for event-based scheduling
3) Run Dashboard
Visualize and track the real-time progress of your running Scenarios on the QuerySurgetrade lsquoRun Dashboardrsquo A
graphical display helps you to follow the flow of your queries and you can drill-down to see test details and
data failures
View query execution progress live via graphical run status displays
Drill-down into data as QuerySurgetrade executes to examine results as they become available during
execution
See real-time statistics for each QueryPair executed and for the Scenario execution as a whole
Alert your team about the status of execution via custom email notifications
Export detailed results in Excel CSV or XML formats to share with team members and other project
stakeholders
4) Reporting
Get a comprehensive audit and share detailed results with others Use QuerySurgetrade reports to share both high-
level and detailed views of your testing with team members managers and business stakeholders
Choose from a wide selection of configurable reports within the QuerySurgetrade lsquoReporting Centerrsquo
Built-in reports range from high-level summary reports to lower-level detailed reports with a complete
audit trail of test modifications
Configure reports for specific date ranges asset types or specific executions to get a view into your
results that you need
Export your reports as Excel or PDF files to share within your organization or to archive for future audit
needs
5) Administration
The administration module provides access to the control features of your QuerySurgetrade installation Here you
have the ability to create and manage user profiles database connections Agent configuration data archiving
and automated email notification options
Create and manage QuerySurgetrade users and Agents
Manage QuerySurgetrade data storage with the included storage tools
Create and manage connections to source and target data stores
View QuerySurgetrade server information including configuration settings and your application licensing details
Create automated email notifications to send results to your team at the end of a test run
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
7
The QuerySurgetrade Testing Process
Testing and validating the ETL process is the key component to the success of a data warehouse
implementation Bad data caused by defects in the ETL process can cause data problems in reporting that can
result in poor strategic decision making
Example A large fast food company depends on BI reports to determine how much raw beef to order on a
monthly basis by sales region and time of year If these reports are not correct then the company could order
an incorrect amount which could cost the company millions of dollars in either lost revenue or wasted product
Developers utilize ETL tools to accomplish the extracting transformation and loading of data from sources into
target systems
Test Points and ETL Legs
bull An lsquoETL Legrsquo refers to a single ETL process that movestransforms data between two discrete points in the data
warehouse architecture
bull A full ETL process may have multiple legs
bull Test points and single ETL leg the verification is between the source and the target for that leg
Example An operational source database (source test point) is extracted transformed and loaded into a data
warehouse (target test point) Testing is conducted across this ETL leg
bull Test points and multiple ETL legs The multi Leg approach is to validate multiple legs of the ETL process in a
single test lsquojumping overrsquo ETL legs in the process A typical multi Leg test is to validate the entire ETL process
from data sources to final data endpoint utilizing test points only at the data sources and at the final data
endpoint
Data Mapping Document
A data mapping document frequently called a source-to-target map is the most important artifact when testing
a data warehouse and is generally created in an Excel spreadsheet or Word document The mapping document
acts as a central part of the functional requirements Testers use the mapping document to verify that the data
has been extracted from the source databases and files into the target data warehouse and data marts
correctly and that the transformations have been performed according to the specifications detailed in the
mapping document The following information is contained within the mapping document
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
8
QuerySurgetrade The Process in a Nutshell
Review mapping document
Determine the optimum percent of coverage or amount of data that is required to be tested based upon time
and resources
If not testing 100 of the data determine the exact sampling of data needed
Create test cases that exercise the requirements of the mapping document
Create pairs of SQL queries (QueryPairs) ndash one aimed at the source database or file one at the target data
warehouse or data mart
Bundle groups of QueryPairs (Test Suites) into test Scenarios
Schedule Scenarios to run (a) immediately (b) at a certain day and time or (c) automatically after an event
Analyze and drill down into your results and identify bad data and data defects with our robust reporting engine
Report defects in your defect tracking tool (ie HP Quality Center IBM Rational Quality Manager Jira Bugzilla
etc)
Have reports sent automatically via email to team members
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
9
About the QuerySurgetrade Architecture
QuerySurgetrade is a locally installed browser-based testing tool Supporting all current browsers (Chrome Firefox IE
Safari etc) QuerySurgetrade is perfect for teams that are geographically distributed QuerySurgetrade extracts the data-
under-test to its own separate
infrastructure which eliminates processing
overhead on the source and target database
servers in your data warehouse
architecture The QuerySurgetrade architecture
is comprised of an application server
database server and Agents
QuerySurgetrade Application Server and
Database
QuerySurgetrade utilizes a Tomcat application
server and a MySQL database The database
is bundled with and embedded within the
product
QuerySurgetrade Agents
QuerySurgetrade Agents are the components of the architecture that execute queries against source and target data
sources returning the results to the QuerySurgetrade database The Agents execute SQL queries validating each piece of
data throughout the ETL process This exposes all data mismatch failures row count differences and column type
mismatch failures affording you the ability to test to 100 of your data quickly
Although the Agents issue queries to both the source and target databases they do not reside on the physical source or
target database boxes QuerySurgetrade Agents can be deployed on the same box as the QuerySurgetrade Application Server
and QuerySurgetrade Database Server in a single box install or on any ldquosatelliterdquo boxes in the environment (often these are
test lab boxes or available desktop boxes) The QuerySurgetrade Agent when it receives a bundle of queries can run
multiple queries simultaneously (in parallel)
One of the features QuerySurgetrade gives you is the ability to raise your lsquotesting throughputrsquo The idea is to be able to fire
off QueryPairs in bulk against your sources and targets so that you can execute at the highest level your environment
can support The QuerySurgetrade Agent lets you do this because you can deploy multiple Agents in your environment ndash on
lsquosatellitersquo boxes surrounding your QuerySurgetrade server (note that each Agent can run multiple query threads as well)
QuerySurgetrade allows you to install up to 10 Agents
More Agents = more queries = more throughput
How many Agents are appropriate for your environment The answer is ndash you find out by experimentation Once you
have built an initial test library start with 2 or 3 Agents and see how your sources and targets behave Add additional
Agents in a subsequent cycle again monitoring the source and target behavior As you continue to add Agents the loads
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
10
on sources and targets will grow with query volume ndash and sourcetarget response times will start to grow as well Once
you have identified the level where response times have started to increase back down to the previous level This level
is roughly the maximum throughput your current environment can support
For more information on Agents please visit AdministrationAgents in the Help guide
Database Data Warehouse Support
In principle QuerySurgetrade can support any JDBC-compliant data source QuerySurgetrade currently ships with Oracle
MySQL Teradata Aster SQL Server DB2 Informix Netezza Sybase in-memory database and flat file support and
supports many other data sources
Installation Requirements
For a trial installation the QuerySurgetrade application server the QuerySurgetrade database server and QuerySurgetrade Agents
may be installed either on a single box or on separate boxes Minimum requirements for a single box installation are 4
GB of memory and 100 GB of disk space More memory and disk space will always provide better performance
Deploying to a distributed environment with multiple boxes or VM images (ie database server on one box app server
on another Agent(s) on other boxes) will have a positive impact on the query size data volume and QuerySurgetrade
performance that can be handled during the trial For additional information on system requirements please refer to
the document QuerySurgetrade System Requirements
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
11
QuerySurgetrade Terminology
QueryPair
A pair of SQL queries where one query retrieves data from a source file or database and
another SQL query that retrieves data from a target database data warehouse or data mart
Agent
Performs the actual query tasks Agents execute queries against source and target data stores and return
the results to the QuerySurgetrade database
Design-Time Run
Allows you to execute a QueryPair test to make sure that it behaves as you expect This is not intended for
actual test execution purposes
Query Snippet
Reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet is to
minimize the number of places you need to make changes on the same code in different SQL calls
Test Suite
A collection of QueryPairs used for execution This feature allows you to group your QueryPairs execution
purposes that is independent of your lsquoDesign Libraryrsquo organization
Scenarios
A collection of Suites that are scheduled for execution
Query Wizard
A tool that allows you to generate QueryPairs automatically requiring no SQL coding It is a fast and easy
way to create QueryPairs for both manual testers who do not have SQL skills as well as for testers who are
skilled at SQL and want to speed up test authoring The Query Wizard generates tests that can cover about
80 of all data in a data warehouse automatically 1
Widgets
Project Widgets give you a real-time view into your project progress at all levels from QueryPair
development to execution and results
Command Line Integration
Provides the ability to schedule Test Suites to run using Windows Task Scheduler or integrate with a
continuous build system
1 A recent poll conducted by RTTS on targeted LinkedIn groups found that 80 of columns in data warehouse tables have no transformations
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
12
QuerySurgetrade
QuickStart Guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
13
Login to QuerySurgetrade
Upon QuerySurgetrade installation one Administrative user is created for you to get started
1 On the installation machine click the lsquoStartrsquo button
2 In the lsquoStartrsquo menu select All Programs QuerySurgetrade Launch QuerySurgetrade
3 QuerySurgetrade will launch in your default browser
4 Enter Username ldquoadminrdquo and password ldquoadminrdquo and click the lsquoLoginrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
14
Create a QueryPair test from scratch
A QueryPair is what QuerySurgetrade refers to as a pair of queries that have the following characteristics
o One SQL query that retrieves data from a source file or database and o Another SQL query that retrieves data from a target big data store data warehouse data mart or database
These two queries together comprise a QueryPair
1 Click the lsquoQueryPairsrsquo folder in the lsquoDesign Libraryrsquo panel
2 Click the lsquoCreate New QueryPairrsquo button
3 Enter ldquoMy Test QueryPairrdquo in the lsquoQueryPair Namersquo field and enter ldquoMy first QueryPairrdquo in the lsquoDescriptionrsquo field
Points of interest
o The lsquoCreate a New QueryPairrsquo dialog contains
QueryPair Name field ndash a name for your QueryPair
Description field ndash a description for your QueryPair
Mapping field ndash for reference back to a mapping document if applicable (Data mapping is a
process used in data warehousing by which different data models are linked to each other
Mappings are typically used for transformations in the ETL process or for consolidation of
multiple databases and or redundant columns )
4 Click the lsquoSaversquo button on the lsquoCreate New QueryPairrsquo dialog and the new QueryPair tab will open
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
15
Points of interest
o The lsquoQueryPairrsquo tab contains
lsquoSourcersquo and lsquoConnectionrsquo ndash for storing the source query with a connection
lsquoTargetrsquo and lsquoConnectionrsquo ndash for storing the target query with a connection
lsquoSaversquo icons ndash for saving the source or target query
5 Enter your SQL in the lsquoSourcersquo query text lsquoEditorrsquo (copypaste will work)
6 Select your source DB from the source lsquoConnectionrsquo drop-down
7 Enter your SQL in the lsquoTargetrsquo query text lsquoEditorrsquo (copypaste will work)
8 Select your target DB from the target lsquoConnectionrsquo drop-down
Points of interest
o In the screenshot above lsquocountryNamersquo is the column name in the source COUNTRYISO table
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
16
o In the screenshot above lsquocountryNamersquo is the column name in the target lsquoCountryrsquo table (same name in
both source and target)
o For demonstration purposes both columns were aliased to lsquoCountryrsquo QuerySurgetrade does not require
both source and target columns to be named the same (although this is a best practice) however the
columns need to be in the same logical order between source and target
9 Click the lsquoSaversquo icon on both the source and target queries
For more information on QueryPairs please visit Design LibraryQueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
17
Review of QuerySurgetrade Agent and Agent Status
QuerySurgetrade Agents perform the actual query tasks Agents execute queries against source and target data stores and return the results to QuerySurgetrade When you install a QuerySurgetrade Agent the installer will ask you for the URL of your QuerySurgetrade installation The installer will then install and start the Agent When the Agent starts it will check its registration status with QuerySurgetrade and it will auto-register if necessary
1 Agent status can be determined visually via the Agent icon in the bottom right of the GUI
Points of interest
o Agent icon appears red on bottom when busy
o Agent icon appears yellow on bottom when idle
o Agent icon appears gray on bottom when offline
o Mouse-over the Agent icon to reveal the status of all Agents
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
18
2 Click the Agent icon to open an lsquoAgent Activityrsquo window
Points of interest
o The lsquoAgent Activityrsquo window contains
Hostname ndash the names of all Agents that have been added
Status ndash Agents can be Idle Offline or Running a Scenario
Last Ping ndash date and time the Agent last communicated with QuerySurgetrade Active Agents
display a checked green symbol inactive Agents display an Xrsquod red symbol
Additional points
o You may install multiple QuerySurgetrade Agents up to the number that your license permits
o Each QuerySurgetrade Agent deployed in your environment needs at least one JDBC driver to work with
your data sources A JDBC driver is a piece of software that allows your Agent to talk to a data source
So for example if you plan to use QuerySurgetrade with Oracle and Teradata you will need to install both
the Oracle and the Teradata drivers with each Agent
o The QuerySurgetrade Installer comes bundled with JDBC drivers for several industry-standard databases
and you can install these drivers when you install the Agent
o You can always add new drivers using the installer after you have installed an Agent
o Your JDBC driver product may not be bundled with QuerySurgetrade if not you will have to deploy the
JDBC driver(s) manually to the Agent machine For more information see Adding JDBC Drivers
o QuerySurgetrade Agent installs as a service by default
For more information on Agents please visit AdministrationAgents in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
19
Design-Time Run execution of an existing QueryPair test
The lsquoDesign-Time Runrsquo tab displays detailed results for each QueryPair This tab allows you to execute a QueryPair test
run to make sure that it behaves as you expect This is not intended for actual testing execution purposes
1 Click on the + next to the lsquoQueryPairsrsquo folder on the left to expand the folder
Points of interest
o QuerySurgetrade utilizes a folder structure similar to Microsoft Windows Explorer
o Multiple sub-folders can be contained within folders
o QueryPairs are contained within each folder
2 Double-click your QueryPair to open it
Points of interest
A QueryPair has the following tabs
o The lsquoQueryPairrsquo tab contains
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
20
lsquoSource Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoTarget Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoSaversquo icons ndash for saving the source or target query
o The lsquoPropertiesrsquo tab contains
QueryPair name description and mapping fields
Data Type Checking ndash Ability to check data types or convert all types to varchar (String)
before comparison
Row Count Options ndash to set reporting for row count differences
Key Column Definition ndash to set a column from either the source or target query as key
Row Duplicate Options ndash to set whether or not QuerySurgetrade checks for duplicate rows
o The lsquoDesign-Time Runrsquo tab contains
Detailed results for each QueryPair This tab allows you to execute a QueryPair test run to
make sure that it behaves as you expect
o The lsquoHistoryrsquo tab shows the history of changes to the QueryPair
o The lsquoDTR Historyrsquo tab shows passfail information from previous lsquoDesign-Time Runsrsquo (currently
empty as no runs have been executed yet)
3 Click the lsquoDesign-Time Runrsquo tab
Points of interest
o The lsquoDesign-Time Runrsquo tab allows you to execute a test run to make sure that the QueryPair behaves as
you expect (not for actual testing execution purposes)
o The first time clicking on the rsquoDesign-Time Runrsquo will indicate that a run has not occurred previously for a
QueryPair
o A specific Agent if desired can be selected in the drop down menu (not required )
o Once you perform a lsquoDesign-Time Runrsquo the most recent results will always display here
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
21
4 Click the lsquoRunrsquo button to execute the QueryPair
Points of interest
o When executing a lsquoDesign-Time Runrsquo QuerySurgetrade goes through the following phases
Loading ndash QuerySurgetrade is loading the SQL pairs onto the Agent for execution
Running ndash The Agent is running the target and source queries
Analyzing ndash QuerySurgetrade is comparing the results
o QuerySurgetrade displays the following information about the last lsquoDesign-Time Runrsquo
Source Rows ndash number of source rows returned
Target Rows ndash number of target rows returned
Row Count Difference ndash number of rows different between source and target
Failed Row Count ndash number of rows with data differences
Non-Matching Source Rows ndash number of source rows not found in the target (based on key
column(s))
Non-Matching Target Rows ndash number of target rows not found in the source (based on key
column(s))
o lsquoConnectionsrsquo and lsquoQuery Performancersquo metrics are displayed
5 Click the lsquoView Query Resultsrsquo button to bring up the results window
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
22
Points of interest
o The lsquoQueryPair Resultsrsquo window contains five tabs
Source Tab ndash displays the source result rows
Target Tab ndash displays the target result rows
Failures Tab ndash displays data failures (not populated in this example as no rows failed)
Source Query Tab ndash displays the source query
Target Query Tab ndash displays the target query
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
23
Create a Reusable Query Snippet
A query Snippet is a reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet
is to minimize the number of places you need to make changes on the same code in different SQL calls A Snippet does
not have to be a syntactically intact query (for example it might just be a WHERE clause) but there is no reason why it
canrsquot be a complete query (eg a reusable sub-query) This feature lets you develop libraries of lsquoReusable Query
Snippetsrsquo to be reused in multiple queries If a Snippet shared by multiple queries needs to change you can make the
change once and all of the queries using the Snippet are changed automatically
To create a lsquoReusable Query Snippetrsquo
1 Click the lsquoReusable Query Snippetsrsquo folder in the lsquoDesign Libraryrsquo
2 Click the lsquoCreate New Reusable Query Snippetrsquo button
3 Enter ldquoMy Test Snippetrdquo in the lsquoReusable Query Snippet Namersquo field and enter ldquoMy first reusable query snippetrdquo
in the lsquoDescriptionrsquo field
4 Click the lsquoSaversquo button on the lsquoCreate New Reusable Query Snippetrsquo dialog
5 Enter your SQL in the lsquoReusable Query Snippetrsquo text lsquoEditorrsquo (copypaste will work)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
24
Points of interest
o A lsquoReusable Query Snippetrsquo has the following tabs
Reusable Query ndash where the SQL resides
Properties ndash for additional descriptive information and metadata
History ndash shows the history of changes made to the Snippet
Appearances ndash shows which QueryPairs contain the Snippet
6 Click the lsquoSaversquo button to save your lsquoReusable Query Snippetrsquo
7 The newly created lsquoReusable Query Snippetrsquo is added to the lsquoDesign Libraryrsquo and is now available for use
Adding a lsquoReusable Query Snippetrsquo to a QueryPair
1 Open the ldquoMy Test QueryPairrdquo previously created
2 Place your cursor within the existing SQL query where you would like to add the Snippet
3 Click the lsquoAdd Reusable Query Snippetrsquo button
4 Click the lsquoReusable Query Snippetsrsquo folder on the left panel
5 Select lsquoMy Test Snippetrsquo in the top right panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
25
Points of interest
o The left panel utilizes a folder structure similar to Microsoft Windows Explorer (your Snippet is saved
in the root folder but can be grouped by subfolders manually)
o The top right pane displays the lsquoReusable Query Snippetsrsquo including the one you created earlier
o The bottom right panel displays the SQL of the selected Snippet
6 Click the lsquoOKrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
6
Mix-and-match test QueryPairs in QuerySurgetrade Test Suites to meet specific project execution goals
Build groups of QuerySurgetrade Test Suites to test specific mappings ETL logic or data warehouse sources
Build QuerySurgetrade Scenarios for scheduling your execution runs at specific dates and times
Use the execution API for event-based scheduling
3) Run Dashboard
Visualize and track the real-time progress of your running Scenarios on the QuerySurgetrade lsquoRun Dashboardrsquo A
graphical display helps you to follow the flow of your queries and you can drill-down to see test details and
data failures
View query execution progress live via graphical run status displays
Drill-down into data as QuerySurgetrade executes to examine results as they become available during
execution
See real-time statistics for each QueryPair executed and for the Scenario execution as a whole
Alert your team about the status of execution via custom email notifications
Export detailed results in Excel CSV or XML formats to share with team members and other project
stakeholders
4) Reporting
Get a comprehensive audit and share detailed results with others Use QuerySurgetrade reports to share both high-
level and detailed views of your testing with team members managers and business stakeholders
Choose from a wide selection of configurable reports within the QuerySurgetrade lsquoReporting Centerrsquo
Built-in reports range from high-level summary reports to lower-level detailed reports with a complete
audit trail of test modifications
Configure reports for specific date ranges asset types or specific executions to get a view into your
results that you need
Export your reports as Excel or PDF files to share within your organization or to archive for future audit
needs
5) Administration
The administration module provides access to the control features of your QuerySurgetrade installation Here you
have the ability to create and manage user profiles database connections Agent configuration data archiving
and automated email notification options
Create and manage QuerySurgetrade users and Agents
Manage QuerySurgetrade data storage with the included storage tools
Create and manage connections to source and target data stores
View QuerySurgetrade server information including configuration settings and your application licensing details
Create automated email notifications to send results to your team at the end of a test run
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
7
The QuerySurgetrade Testing Process
Testing and validating the ETL process is the key component to the success of a data warehouse
implementation Bad data caused by defects in the ETL process can cause data problems in reporting that can
result in poor strategic decision making
Example A large fast food company depends on BI reports to determine how much raw beef to order on a
monthly basis by sales region and time of year If these reports are not correct then the company could order
an incorrect amount which could cost the company millions of dollars in either lost revenue or wasted product
Developers utilize ETL tools to accomplish the extracting transformation and loading of data from sources into
target systems
Test Points and ETL Legs
bull An lsquoETL Legrsquo refers to a single ETL process that movestransforms data between two discrete points in the data
warehouse architecture
bull A full ETL process may have multiple legs
bull Test points and single ETL leg the verification is between the source and the target for that leg
Example An operational source database (source test point) is extracted transformed and loaded into a data
warehouse (target test point) Testing is conducted across this ETL leg
bull Test points and multiple ETL legs The multi Leg approach is to validate multiple legs of the ETL process in a
single test lsquojumping overrsquo ETL legs in the process A typical multi Leg test is to validate the entire ETL process
from data sources to final data endpoint utilizing test points only at the data sources and at the final data
endpoint
Data Mapping Document
A data mapping document frequently called a source-to-target map is the most important artifact when testing
a data warehouse and is generally created in an Excel spreadsheet or Word document The mapping document
acts as a central part of the functional requirements Testers use the mapping document to verify that the data
has been extracted from the source databases and files into the target data warehouse and data marts
correctly and that the transformations have been performed according to the specifications detailed in the
mapping document The following information is contained within the mapping document
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
8
QuerySurgetrade The Process in a Nutshell
Review mapping document
Determine the optimum percent of coverage or amount of data that is required to be tested based upon time
and resources
If not testing 100 of the data determine the exact sampling of data needed
Create test cases that exercise the requirements of the mapping document
Create pairs of SQL queries (QueryPairs) ndash one aimed at the source database or file one at the target data
warehouse or data mart
Bundle groups of QueryPairs (Test Suites) into test Scenarios
Schedule Scenarios to run (a) immediately (b) at a certain day and time or (c) automatically after an event
Analyze and drill down into your results and identify bad data and data defects with our robust reporting engine
Report defects in your defect tracking tool (ie HP Quality Center IBM Rational Quality Manager Jira Bugzilla
etc)
Have reports sent automatically via email to team members
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
9
About the QuerySurgetrade Architecture
QuerySurgetrade is a locally installed browser-based testing tool Supporting all current browsers (Chrome Firefox IE
Safari etc) QuerySurgetrade is perfect for teams that are geographically distributed QuerySurgetrade extracts the data-
under-test to its own separate
infrastructure which eliminates processing
overhead on the source and target database
servers in your data warehouse
architecture The QuerySurgetrade architecture
is comprised of an application server
database server and Agents
QuerySurgetrade Application Server and
Database
QuerySurgetrade utilizes a Tomcat application
server and a MySQL database The database
is bundled with and embedded within the
product
QuerySurgetrade Agents
QuerySurgetrade Agents are the components of the architecture that execute queries against source and target data
sources returning the results to the QuerySurgetrade database The Agents execute SQL queries validating each piece of
data throughout the ETL process This exposes all data mismatch failures row count differences and column type
mismatch failures affording you the ability to test to 100 of your data quickly
Although the Agents issue queries to both the source and target databases they do not reside on the physical source or
target database boxes QuerySurgetrade Agents can be deployed on the same box as the QuerySurgetrade Application Server
and QuerySurgetrade Database Server in a single box install or on any ldquosatelliterdquo boxes in the environment (often these are
test lab boxes or available desktop boxes) The QuerySurgetrade Agent when it receives a bundle of queries can run
multiple queries simultaneously (in parallel)
One of the features QuerySurgetrade gives you is the ability to raise your lsquotesting throughputrsquo The idea is to be able to fire
off QueryPairs in bulk against your sources and targets so that you can execute at the highest level your environment
can support The QuerySurgetrade Agent lets you do this because you can deploy multiple Agents in your environment ndash on
lsquosatellitersquo boxes surrounding your QuerySurgetrade server (note that each Agent can run multiple query threads as well)
QuerySurgetrade allows you to install up to 10 Agents
More Agents = more queries = more throughput
How many Agents are appropriate for your environment The answer is ndash you find out by experimentation Once you
have built an initial test library start with 2 or 3 Agents and see how your sources and targets behave Add additional
Agents in a subsequent cycle again monitoring the source and target behavior As you continue to add Agents the loads
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
10
on sources and targets will grow with query volume ndash and sourcetarget response times will start to grow as well Once
you have identified the level where response times have started to increase back down to the previous level This level
is roughly the maximum throughput your current environment can support
For more information on Agents please visit AdministrationAgents in the Help guide
Database Data Warehouse Support
In principle QuerySurgetrade can support any JDBC-compliant data source QuerySurgetrade currently ships with Oracle
MySQL Teradata Aster SQL Server DB2 Informix Netezza Sybase in-memory database and flat file support and
supports many other data sources
Installation Requirements
For a trial installation the QuerySurgetrade application server the QuerySurgetrade database server and QuerySurgetrade Agents
may be installed either on a single box or on separate boxes Minimum requirements for a single box installation are 4
GB of memory and 100 GB of disk space More memory and disk space will always provide better performance
Deploying to a distributed environment with multiple boxes or VM images (ie database server on one box app server
on another Agent(s) on other boxes) will have a positive impact on the query size data volume and QuerySurgetrade
performance that can be handled during the trial For additional information on system requirements please refer to
the document QuerySurgetrade System Requirements
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
11
QuerySurgetrade Terminology
QueryPair
A pair of SQL queries where one query retrieves data from a source file or database and
another SQL query that retrieves data from a target database data warehouse or data mart
Agent
Performs the actual query tasks Agents execute queries against source and target data stores and return
the results to the QuerySurgetrade database
Design-Time Run
Allows you to execute a QueryPair test to make sure that it behaves as you expect This is not intended for
actual test execution purposes
Query Snippet
Reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet is to
minimize the number of places you need to make changes on the same code in different SQL calls
Test Suite
A collection of QueryPairs used for execution This feature allows you to group your QueryPairs execution
purposes that is independent of your lsquoDesign Libraryrsquo organization
Scenarios
A collection of Suites that are scheduled for execution
Query Wizard
A tool that allows you to generate QueryPairs automatically requiring no SQL coding It is a fast and easy
way to create QueryPairs for both manual testers who do not have SQL skills as well as for testers who are
skilled at SQL and want to speed up test authoring The Query Wizard generates tests that can cover about
80 of all data in a data warehouse automatically 1
Widgets
Project Widgets give you a real-time view into your project progress at all levels from QueryPair
development to execution and results
Command Line Integration
Provides the ability to schedule Test Suites to run using Windows Task Scheduler or integrate with a
continuous build system
1 A recent poll conducted by RTTS on targeted LinkedIn groups found that 80 of columns in data warehouse tables have no transformations
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
12
QuerySurgetrade
QuickStart Guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
13
Login to QuerySurgetrade
Upon QuerySurgetrade installation one Administrative user is created for you to get started
1 On the installation machine click the lsquoStartrsquo button
2 In the lsquoStartrsquo menu select All Programs QuerySurgetrade Launch QuerySurgetrade
3 QuerySurgetrade will launch in your default browser
4 Enter Username ldquoadminrdquo and password ldquoadminrdquo and click the lsquoLoginrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
14
Create a QueryPair test from scratch
A QueryPair is what QuerySurgetrade refers to as a pair of queries that have the following characteristics
o One SQL query that retrieves data from a source file or database and o Another SQL query that retrieves data from a target big data store data warehouse data mart or database
These two queries together comprise a QueryPair
1 Click the lsquoQueryPairsrsquo folder in the lsquoDesign Libraryrsquo panel
2 Click the lsquoCreate New QueryPairrsquo button
3 Enter ldquoMy Test QueryPairrdquo in the lsquoQueryPair Namersquo field and enter ldquoMy first QueryPairrdquo in the lsquoDescriptionrsquo field
Points of interest
o The lsquoCreate a New QueryPairrsquo dialog contains
QueryPair Name field ndash a name for your QueryPair
Description field ndash a description for your QueryPair
Mapping field ndash for reference back to a mapping document if applicable (Data mapping is a
process used in data warehousing by which different data models are linked to each other
Mappings are typically used for transformations in the ETL process or for consolidation of
multiple databases and or redundant columns )
4 Click the lsquoSaversquo button on the lsquoCreate New QueryPairrsquo dialog and the new QueryPair tab will open
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
15
Points of interest
o The lsquoQueryPairrsquo tab contains
lsquoSourcersquo and lsquoConnectionrsquo ndash for storing the source query with a connection
lsquoTargetrsquo and lsquoConnectionrsquo ndash for storing the target query with a connection
lsquoSaversquo icons ndash for saving the source or target query
5 Enter your SQL in the lsquoSourcersquo query text lsquoEditorrsquo (copypaste will work)
6 Select your source DB from the source lsquoConnectionrsquo drop-down
7 Enter your SQL in the lsquoTargetrsquo query text lsquoEditorrsquo (copypaste will work)
8 Select your target DB from the target lsquoConnectionrsquo drop-down
Points of interest
o In the screenshot above lsquocountryNamersquo is the column name in the source COUNTRYISO table
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
16
o In the screenshot above lsquocountryNamersquo is the column name in the target lsquoCountryrsquo table (same name in
both source and target)
o For demonstration purposes both columns were aliased to lsquoCountryrsquo QuerySurgetrade does not require
both source and target columns to be named the same (although this is a best practice) however the
columns need to be in the same logical order between source and target
9 Click the lsquoSaversquo icon on both the source and target queries
For more information on QueryPairs please visit Design LibraryQueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
17
Review of QuerySurgetrade Agent and Agent Status
QuerySurgetrade Agents perform the actual query tasks Agents execute queries against source and target data stores and return the results to QuerySurgetrade When you install a QuerySurgetrade Agent the installer will ask you for the URL of your QuerySurgetrade installation The installer will then install and start the Agent When the Agent starts it will check its registration status with QuerySurgetrade and it will auto-register if necessary
1 Agent status can be determined visually via the Agent icon in the bottom right of the GUI
Points of interest
o Agent icon appears red on bottom when busy
o Agent icon appears yellow on bottom when idle
o Agent icon appears gray on bottom when offline
o Mouse-over the Agent icon to reveal the status of all Agents
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
18
2 Click the Agent icon to open an lsquoAgent Activityrsquo window
Points of interest
o The lsquoAgent Activityrsquo window contains
Hostname ndash the names of all Agents that have been added
Status ndash Agents can be Idle Offline or Running a Scenario
Last Ping ndash date and time the Agent last communicated with QuerySurgetrade Active Agents
display a checked green symbol inactive Agents display an Xrsquod red symbol
Additional points
o You may install multiple QuerySurgetrade Agents up to the number that your license permits
o Each QuerySurgetrade Agent deployed in your environment needs at least one JDBC driver to work with
your data sources A JDBC driver is a piece of software that allows your Agent to talk to a data source
So for example if you plan to use QuerySurgetrade with Oracle and Teradata you will need to install both
the Oracle and the Teradata drivers with each Agent
o The QuerySurgetrade Installer comes bundled with JDBC drivers for several industry-standard databases
and you can install these drivers when you install the Agent
o You can always add new drivers using the installer after you have installed an Agent
o Your JDBC driver product may not be bundled with QuerySurgetrade if not you will have to deploy the
JDBC driver(s) manually to the Agent machine For more information see Adding JDBC Drivers
o QuerySurgetrade Agent installs as a service by default
For more information on Agents please visit AdministrationAgents in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
19
Design-Time Run execution of an existing QueryPair test
The lsquoDesign-Time Runrsquo tab displays detailed results for each QueryPair This tab allows you to execute a QueryPair test
run to make sure that it behaves as you expect This is not intended for actual testing execution purposes
1 Click on the + next to the lsquoQueryPairsrsquo folder on the left to expand the folder
Points of interest
o QuerySurgetrade utilizes a folder structure similar to Microsoft Windows Explorer
o Multiple sub-folders can be contained within folders
o QueryPairs are contained within each folder
2 Double-click your QueryPair to open it
Points of interest
A QueryPair has the following tabs
o The lsquoQueryPairrsquo tab contains
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
20
lsquoSource Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoTarget Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoSaversquo icons ndash for saving the source or target query
o The lsquoPropertiesrsquo tab contains
QueryPair name description and mapping fields
Data Type Checking ndash Ability to check data types or convert all types to varchar (String)
before comparison
Row Count Options ndash to set reporting for row count differences
Key Column Definition ndash to set a column from either the source or target query as key
Row Duplicate Options ndash to set whether or not QuerySurgetrade checks for duplicate rows
o The lsquoDesign-Time Runrsquo tab contains
Detailed results for each QueryPair This tab allows you to execute a QueryPair test run to
make sure that it behaves as you expect
o The lsquoHistoryrsquo tab shows the history of changes to the QueryPair
o The lsquoDTR Historyrsquo tab shows passfail information from previous lsquoDesign-Time Runsrsquo (currently
empty as no runs have been executed yet)
3 Click the lsquoDesign-Time Runrsquo tab
Points of interest
o The lsquoDesign-Time Runrsquo tab allows you to execute a test run to make sure that the QueryPair behaves as
you expect (not for actual testing execution purposes)
o The first time clicking on the rsquoDesign-Time Runrsquo will indicate that a run has not occurred previously for a
QueryPair
o A specific Agent if desired can be selected in the drop down menu (not required )
o Once you perform a lsquoDesign-Time Runrsquo the most recent results will always display here
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
21
4 Click the lsquoRunrsquo button to execute the QueryPair
Points of interest
o When executing a lsquoDesign-Time Runrsquo QuerySurgetrade goes through the following phases
Loading ndash QuerySurgetrade is loading the SQL pairs onto the Agent for execution
Running ndash The Agent is running the target and source queries
Analyzing ndash QuerySurgetrade is comparing the results
o QuerySurgetrade displays the following information about the last lsquoDesign-Time Runrsquo
Source Rows ndash number of source rows returned
Target Rows ndash number of target rows returned
Row Count Difference ndash number of rows different between source and target
Failed Row Count ndash number of rows with data differences
Non-Matching Source Rows ndash number of source rows not found in the target (based on key
column(s))
Non-Matching Target Rows ndash number of target rows not found in the source (based on key
column(s))
o lsquoConnectionsrsquo and lsquoQuery Performancersquo metrics are displayed
5 Click the lsquoView Query Resultsrsquo button to bring up the results window
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
22
Points of interest
o The lsquoQueryPair Resultsrsquo window contains five tabs
Source Tab ndash displays the source result rows
Target Tab ndash displays the target result rows
Failures Tab ndash displays data failures (not populated in this example as no rows failed)
Source Query Tab ndash displays the source query
Target Query Tab ndash displays the target query
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
23
Create a Reusable Query Snippet
A query Snippet is a reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet
is to minimize the number of places you need to make changes on the same code in different SQL calls A Snippet does
not have to be a syntactically intact query (for example it might just be a WHERE clause) but there is no reason why it
canrsquot be a complete query (eg a reusable sub-query) This feature lets you develop libraries of lsquoReusable Query
Snippetsrsquo to be reused in multiple queries If a Snippet shared by multiple queries needs to change you can make the
change once and all of the queries using the Snippet are changed automatically
To create a lsquoReusable Query Snippetrsquo
1 Click the lsquoReusable Query Snippetsrsquo folder in the lsquoDesign Libraryrsquo
2 Click the lsquoCreate New Reusable Query Snippetrsquo button
3 Enter ldquoMy Test Snippetrdquo in the lsquoReusable Query Snippet Namersquo field and enter ldquoMy first reusable query snippetrdquo
in the lsquoDescriptionrsquo field
4 Click the lsquoSaversquo button on the lsquoCreate New Reusable Query Snippetrsquo dialog
5 Enter your SQL in the lsquoReusable Query Snippetrsquo text lsquoEditorrsquo (copypaste will work)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
24
Points of interest
o A lsquoReusable Query Snippetrsquo has the following tabs
Reusable Query ndash where the SQL resides
Properties ndash for additional descriptive information and metadata
History ndash shows the history of changes made to the Snippet
Appearances ndash shows which QueryPairs contain the Snippet
6 Click the lsquoSaversquo button to save your lsquoReusable Query Snippetrsquo
7 The newly created lsquoReusable Query Snippetrsquo is added to the lsquoDesign Libraryrsquo and is now available for use
Adding a lsquoReusable Query Snippetrsquo to a QueryPair
1 Open the ldquoMy Test QueryPairrdquo previously created
2 Place your cursor within the existing SQL query where you would like to add the Snippet
3 Click the lsquoAdd Reusable Query Snippetrsquo button
4 Click the lsquoReusable Query Snippetsrsquo folder on the left panel
5 Select lsquoMy Test Snippetrsquo in the top right panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
25
Points of interest
o The left panel utilizes a folder structure similar to Microsoft Windows Explorer (your Snippet is saved
in the root folder but can be grouped by subfolders manually)
o The top right pane displays the lsquoReusable Query Snippetsrsquo including the one you created earlier
o The bottom right panel displays the SQL of the selected Snippet
6 Click the lsquoOKrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
7
The QuerySurgetrade Testing Process
Testing and validating the ETL process is the key component to the success of a data warehouse
implementation Bad data caused by defects in the ETL process can cause data problems in reporting that can
result in poor strategic decision making
Example A large fast food company depends on BI reports to determine how much raw beef to order on a
monthly basis by sales region and time of year If these reports are not correct then the company could order
an incorrect amount which could cost the company millions of dollars in either lost revenue or wasted product
Developers utilize ETL tools to accomplish the extracting transformation and loading of data from sources into
target systems
Test Points and ETL Legs
bull An lsquoETL Legrsquo refers to a single ETL process that movestransforms data between two discrete points in the data
warehouse architecture
bull A full ETL process may have multiple legs
bull Test points and single ETL leg the verification is between the source and the target for that leg
Example An operational source database (source test point) is extracted transformed and loaded into a data
warehouse (target test point) Testing is conducted across this ETL leg
bull Test points and multiple ETL legs The multi Leg approach is to validate multiple legs of the ETL process in a
single test lsquojumping overrsquo ETL legs in the process A typical multi Leg test is to validate the entire ETL process
from data sources to final data endpoint utilizing test points only at the data sources and at the final data
endpoint
Data Mapping Document
A data mapping document frequently called a source-to-target map is the most important artifact when testing
a data warehouse and is generally created in an Excel spreadsheet or Word document The mapping document
acts as a central part of the functional requirements Testers use the mapping document to verify that the data
has been extracted from the source databases and files into the target data warehouse and data marts
correctly and that the transformations have been performed according to the specifications detailed in the
mapping document The following information is contained within the mapping document
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
8
QuerySurgetrade The Process in a Nutshell
Review mapping document
Determine the optimum percent of coverage or amount of data that is required to be tested based upon time
and resources
If not testing 100 of the data determine the exact sampling of data needed
Create test cases that exercise the requirements of the mapping document
Create pairs of SQL queries (QueryPairs) ndash one aimed at the source database or file one at the target data
warehouse or data mart
Bundle groups of QueryPairs (Test Suites) into test Scenarios
Schedule Scenarios to run (a) immediately (b) at a certain day and time or (c) automatically after an event
Analyze and drill down into your results and identify bad data and data defects with our robust reporting engine
Report defects in your defect tracking tool (ie HP Quality Center IBM Rational Quality Manager Jira Bugzilla
etc)
Have reports sent automatically via email to team members
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
9
About the QuerySurgetrade Architecture
QuerySurgetrade is a locally installed browser-based testing tool Supporting all current browsers (Chrome Firefox IE
Safari etc) QuerySurgetrade is perfect for teams that are geographically distributed QuerySurgetrade extracts the data-
under-test to its own separate
infrastructure which eliminates processing
overhead on the source and target database
servers in your data warehouse
architecture The QuerySurgetrade architecture
is comprised of an application server
database server and Agents
QuerySurgetrade Application Server and
Database
QuerySurgetrade utilizes a Tomcat application
server and a MySQL database The database
is bundled with and embedded within the
product
QuerySurgetrade Agents
QuerySurgetrade Agents are the components of the architecture that execute queries against source and target data
sources returning the results to the QuerySurgetrade database The Agents execute SQL queries validating each piece of
data throughout the ETL process This exposes all data mismatch failures row count differences and column type
mismatch failures affording you the ability to test to 100 of your data quickly
Although the Agents issue queries to both the source and target databases they do not reside on the physical source or
target database boxes QuerySurgetrade Agents can be deployed on the same box as the QuerySurgetrade Application Server
and QuerySurgetrade Database Server in a single box install or on any ldquosatelliterdquo boxes in the environment (often these are
test lab boxes or available desktop boxes) The QuerySurgetrade Agent when it receives a bundle of queries can run
multiple queries simultaneously (in parallel)
One of the features QuerySurgetrade gives you is the ability to raise your lsquotesting throughputrsquo The idea is to be able to fire
off QueryPairs in bulk against your sources and targets so that you can execute at the highest level your environment
can support The QuerySurgetrade Agent lets you do this because you can deploy multiple Agents in your environment ndash on
lsquosatellitersquo boxes surrounding your QuerySurgetrade server (note that each Agent can run multiple query threads as well)
QuerySurgetrade allows you to install up to 10 Agents
More Agents = more queries = more throughput
How many Agents are appropriate for your environment The answer is ndash you find out by experimentation Once you
have built an initial test library start with 2 or 3 Agents and see how your sources and targets behave Add additional
Agents in a subsequent cycle again monitoring the source and target behavior As you continue to add Agents the loads
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
10
on sources and targets will grow with query volume ndash and sourcetarget response times will start to grow as well Once
you have identified the level where response times have started to increase back down to the previous level This level
is roughly the maximum throughput your current environment can support
For more information on Agents please visit AdministrationAgents in the Help guide
Database Data Warehouse Support
In principle QuerySurgetrade can support any JDBC-compliant data source QuerySurgetrade currently ships with Oracle
MySQL Teradata Aster SQL Server DB2 Informix Netezza Sybase in-memory database and flat file support and
supports many other data sources
Installation Requirements
For a trial installation the QuerySurgetrade application server the QuerySurgetrade database server and QuerySurgetrade Agents
may be installed either on a single box or on separate boxes Minimum requirements for a single box installation are 4
GB of memory and 100 GB of disk space More memory and disk space will always provide better performance
Deploying to a distributed environment with multiple boxes or VM images (ie database server on one box app server
on another Agent(s) on other boxes) will have a positive impact on the query size data volume and QuerySurgetrade
performance that can be handled during the trial For additional information on system requirements please refer to
the document QuerySurgetrade System Requirements
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
11
QuerySurgetrade Terminology
QueryPair
A pair of SQL queries where one query retrieves data from a source file or database and
another SQL query that retrieves data from a target database data warehouse or data mart
Agent
Performs the actual query tasks Agents execute queries against source and target data stores and return
the results to the QuerySurgetrade database
Design-Time Run
Allows you to execute a QueryPair test to make sure that it behaves as you expect This is not intended for
actual test execution purposes
Query Snippet
Reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet is to
minimize the number of places you need to make changes on the same code in different SQL calls
Test Suite
A collection of QueryPairs used for execution This feature allows you to group your QueryPairs execution
purposes that is independent of your lsquoDesign Libraryrsquo organization
Scenarios
A collection of Suites that are scheduled for execution
Query Wizard
A tool that allows you to generate QueryPairs automatically requiring no SQL coding It is a fast and easy
way to create QueryPairs for both manual testers who do not have SQL skills as well as for testers who are
skilled at SQL and want to speed up test authoring The Query Wizard generates tests that can cover about
80 of all data in a data warehouse automatically 1
Widgets
Project Widgets give you a real-time view into your project progress at all levels from QueryPair
development to execution and results
Command Line Integration
Provides the ability to schedule Test Suites to run using Windows Task Scheduler or integrate with a
continuous build system
1 A recent poll conducted by RTTS on targeted LinkedIn groups found that 80 of columns in data warehouse tables have no transformations
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
12
QuerySurgetrade
QuickStart Guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
13
Login to QuerySurgetrade
Upon QuerySurgetrade installation one Administrative user is created for you to get started
1 On the installation machine click the lsquoStartrsquo button
2 In the lsquoStartrsquo menu select All Programs QuerySurgetrade Launch QuerySurgetrade
3 QuerySurgetrade will launch in your default browser
4 Enter Username ldquoadminrdquo and password ldquoadminrdquo and click the lsquoLoginrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
14
Create a QueryPair test from scratch
A QueryPair is what QuerySurgetrade refers to as a pair of queries that have the following characteristics
o One SQL query that retrieves data from a source file or database and o Another SQL query that retrieves data from a target big data store data warehouse data mart or database
These two queries together comprise a QueryPair
1 Click the lsquoQueryPairsrsquo folder in the lsquoDesign Libraryrsquo panel
2 Click the lsquoCreate New QueryPairrsquo button
3 Enter ldquoMy Test QueryPairrdquo in the lsquoQueryPair Namersquo field and enter ldquoMy first QueryPairrdquo in the lsquoDescriptionrsquo field
Points of interest
o The lsquoCreate a New QueryPairrsquo dialog contains
QueryPair Name field ndash a name for your QueryPair
Description field ndash a description for your QueryPair
Mapping field ndash for reference back to a mapping document if applicable (Data mapping is a
process used in data warehousing by which different data models are linked to each other
Mappings are typically used for transformations in the ETL process or for consolidation of
multiple databases and or redundant columns )
4 Click the lsquoSaversquo button on the lsquoCreate New QueryPairrsquo dialog and the new QueryPair tab will open
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
15
Points of interest
o The lsquoQueryPairrsquo tab contains
lsquoSourcersquo and lsquoConnectionrsquo ndash for storing the source query with a connection
lsquoTargetrsquo and lsquoConnectionrsquo ndash for storing the target query with a connection
lsquoSaversquo icons ndash for saving the source or target query
5 Enter your SQL in the lsquoSourcersquo query text lsquoEditorrsquo (copypaste will work)
6 Select your source DB from the source lsquoConnectionrsquo drop-down
7 Enter your SQL in the lsquoTargetrsquo query text lsquoEditorrsquo (copypaste will work)
8 Select your target DB from the target lsquoConnectionrsquo drop-down
Points of interest
o In the screenshot above lsquocountryNamersquo is the column name in the source COUNTRYISO table
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
16
o In the screenshot above lsquocountryNamersquo is the column name in the target lsquoCountryrsquo table (same name in
both source and target)
o For demonstration purposes both columns were aliased to lsquoCountryrsquo QuerySurgetrade does not require
both source and target columns to be named the same (although this is a best practice) however the
columns need to be in the same logical order between source and target
9 Click the lsquoSaversquo icon on both the source and target queries
For more information on QueryPairs please visit Design LibraryQueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
17
Review of QuerySurgetrade Agent and Agent Status
QuerySurgetrade Agents perform the actual query tasks Agents execute queries against source and target data stores and return the results to QuerySurgetrade When you install a QuerySurgetrade Agent the installer will ask you for the URL of your QuerySurgetrade installation The installer will then install and start the Agent When the Agent starts it will check its registration status with QuerySurgetrade and it will auto-register if necessary
1 Agent status can be determined visually via the Agent icon in the bottom right of the GUI
Points of interest
o Agent icon appears red on bottom when busy
o Agent icon appears yellow on bottom when idle
o Agent icon appears gray on bottom when offline
o Mouse-over the Agent icon to reveal the status of all Agents
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
18
2 Click the Agent icon to open an lsquoAgent Activityrsquo window
Points of interest
o The lsquoAgent Activityrsquo window contains
Hostname ndash the names of all Agents that have been added
Status ndash Agents can be Idle Offline or Running a Scenario
Last Ping ndash date and time the Agent last communicated with QuerySurgetrade Active Agents
display a checked green symbol inactive Agents display an Xrsquod red symbol
Additional points
o You may install multiple QuerySurgetrade Agents up to the number that your license permits
o Each QuerySurgetrade Agent deployed in your environment needs at least one JDBC driver to work with
your data sources A JDBC driver is a piece of software that allows your Agent to talk to a data source
So for example if you plan to use QuerySurgetrade with Oracle and Teradata you will need to install both
the Oracle and the Teradata drivers with each Agent
o The QuerySurgetrade Installer comes bundled with JDBC drivers for several industry-standard databases
and you can install these drivers when you install the Agent
o You can always add new drivers using the installer after you have installed an Agent
o Your JDBC driver product may not be bundled with QuerySurgetrade if not you will have to deploy the
JDBC driver(s) manually to the Agent machine For more information see Adding JDBC Drivers
o QuerySurgetrade Agent installs as a service by default
For more information on Agents please visit AdministrationAgents in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
19
Design-Time Run execution of an existing QueryPair test
The lsquoDesign-Time Runrsquo tab displays detailed results for each QueryPair This tab allows you to execute a QueryPair test
run to make sure that it behaves as you expect This is not intended for actual testing execution purposes
1 Click on the + next to the lsquoQueryPairsrsquo folder on the left to expand the folder
Points of interest
o QuerySurgetrade utilizes a folder structure similar to Microsoft Windows Explorer
o Multiple sub-folders can be contained within folders
o QueryPairs are contained within each folder
2 Double-click your QueryPair to open it
Points of interest
A QueryPair has the following tabs
o The lsquoQueryPairrsquo tab contains
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
20
lsquoSource Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoTarget Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoSaversquo icons ndash for saving the source or target query
o The lsquoPropertiesrsquo tab contains
QueryPair name description and mapping fields
Data Type Checking ndash Ability to check data types or convert all types to varchar (String)
before comparison
Row Count Options ndash to set reporting for row count differences
Key Column Definition ndash to set a column from either the source or target query as key
Row Duplicate Options ndash to set whether or not QuerySurgetrade checks for duplicate rows
o The lsquoDesign-Time Runrsquo tab contains
Detailed results for each QueryPair This tab allows you to execute a QueryPair test run to
make sure that it behaves as you expect
o The lsquoHistoryrsquo tab shows the history of changes to the QueryPair
o The lsquoDTR Historyrsquo tab shows passfail information from previous lsquoDesign-Time Runsrsquo (currently
empty as no runs have been executed yet)
3 Click the lsquoDesign-Time Runrsquo tab
Points of interest
o The lsquoDesign-Time Runrsquo tab allows you to execute a test run to make sure that the QueryPair behaves as
you expect (not for actual testing execution purposes)
o The first time clicking on the rsquoDesign-Time Runrsquo will indicate that a run has not occurred previously for a
QueryPair
o A specific Agent if desired can be selected in the drop down menu (not required )
o Once you perform a lsquoDesign-Time Runrsquo the most recent results will always display here
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
21
4 Click the lsquoRunrsquo button to execute the QueryPair
Points of interest
o When executing a lsquoDesign-Time Runrsquo QuerySurgetrade goes through the following phases
Loading ndash QuerySurgetrade is loading the SQL pairs onto the Agent for execution
Running ndash The Agent is running the target and source queries
Analyzing ndash QuerySurgetrade is comparing the results
o QuerySurgetrade displays the following information about the last lsquoDesign-Time Runrsquo
Source Rows ndash number of source rows returned
Target Rows ndash number of target rows returned
Row Count Difference ndash number of rows different between source and target
Failed Row Count ndash number of rows with data differences
Non-Matching Source Rows ndash number of source rows not found in the target (based on key
column(s))
Non-Matching Target Rows ndash number of target rows not found in the source (based on key
column(s))
o lsquoConnectionsrsquo and lsquoQuery Performancersquo metrics are displayed
5 Click the lsquoView Query Resultsrsquo button to bring up the results window
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
22
Points of interest
o The lsquoQueryPair Resultsrsquo window contains five tabs
Source Tab ndash displays the source result rows
Target Tab ndash displays the target result rows
Failures Tab ndash displays data failures (not populated in this example as no rows failed)
Source Query Tab ndash displays the source query
Target Query Tab ndash displays the target query
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
23
Create a Reusable Query Snippet
A query Snippet is a reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet
is to minimize the number of places you need to make changes on the same code in different SQL calls A Snippet does
not have to be a syntactically intact query (for example it might just be a WHERE clause) but there is no reason why it
canrsquot be a complete query (eg a reusable sub-query) This feature lets you develop libraries of lsquoReusable Query
Snippetsrsquo to be reused in multiple queries If a Snippet shared by multiple queries needs to change you can make the
change once and all of the queries using the Snippet are changed automatically
To create a lsquoReusable Query Snippetrsquo
1 Click the lsquoReusable Query Snippetsrsquo folder in the lsquoDesign Libraryrsquo
2 Click the lsquoCreate New Reusable Query Snippetrsquo button
3 Enter ldquoMy Test Snippetrdquo in the lsquoReusable Query Snippet Namersquo field and enter ldquoMy first reusable query snippetrdquo
in the lsquoDescriptionrsquo field
4 Click the lsquoSaversquo button on the lsquoCreate New Reusable Query Snippetrsquo dialog
5 Enter your SQL in the lsquoReusable Query Snippetrsquo text lsquoEditorrsquo (copypaste will work)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
24
Points of interest
o A lsquoReusable Query Snippetrsquo has the following tabs
Reusable Query ndash where the SQL resides
Properties ndash for additional descriptive information and metadata
History ndash shows the history of changes made to the Snippet
Appearances ndash shows which QueryPairs contain the Snippet
6 Click the lsquoSaversquo button to save your lsquoReusable Query Snippetrsquo
7 The newly created lsquoReusable Query Snippetrsquo is added to the lsquoDesign Libraryrsquo and is now available for use
Adding a lsquoReusable Query Snippetrsquo to a QueryPair
1 Open the ldquoMy Test QueryPairrdquo previously created
2 Place your cursor within the existing SQL query where you would like to add the Snippet
3 Click the lsquoAdd Reusable Query Snippetrsquo button
4 Click the lsquoReusable Query Snippetsrsquo folder on the left panel
5 Select lsquoMy Test Snippetrsquo in the top right panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
25
Points of interest
o The left panel utilizes a folder structure similar to Microsoft Windows Explorer (your Snippet is saved
in the root folder but can be grouped by subfolders manually)
o The top right pane displays the lsquoReusable Query Snippetsrsquo including the one you created earlier
o The bottom right panel displays the SQL of the selected Snippet
6 Click the lsquoOKrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
8
QuerySurgetrade The Process in a Nutshell
Review mapping document
Determine the optimum percent of coverage or amount of data that is required to be tested based upon time
and resources
If not testing 100 of the data determine the exact sampling of data needed
Create test cases that exercise the requirements of the mapping document
Create pairs of SQL queries (QueryPairs) ndash one aimed at the source database or file one at the target data
warehouse or data mart
Bundle groups of QueryPairs (Test Suites) into test Scenarios
Schedule Scenarios to run (a) immediately (b) at a certain day and time or (c) automatically after an event
Analyze and drill down into your results and identify bad data and data defects with our robust reporting engine
Report defects in your defect tracking tool (ie HP Quality Center IBM Rational Quality Manager Jira Bugzilla
etc)
Have reports sent automatically via email to team members
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
9
About the QuerySurgetrade Architecture
QuerySurgetrade is a locally installed browser-based testing tool Supporting all current browsers (Chrome Firefox IE
Safari etc) QuerySurgetrade is perfect for teams that are geographically distributed QuerySurgetrade extracts the data-
under-test to its own separate
infrastructure which eliminates processing
overhead on the source and target database
servers in your data warehouse
architecture The QuerySurgetrade architecture
is comprised of an application server
database server and Agents
QuerySurgetrade Application Server and
Database
QuerySurgetrade utilizes a Tomcat application
server and a MySQL database The database
is bundled with and embedded within the
product
QuerySurgetrade Agents
QuerySurgetrade Agents are the components of the architecture that execute queries against source and target data
sources returning the results to the QuerySurgetrade database The Agents execute SQL queries validating each piece of
data throughout the ETL process This exposes all data mismatch failures row count differences and column type
mismatch failures affording you the ability to test to 100 of your data quickly
Although the Agents issue queries to both the source and target databases they do not reside on the physical source or
target database boxes QuerySurgetrade Agents can be deployed on the same box as the QuerySurgetrade Application Server
and QuerySurgetrade Database Server in a single box install or on any ldquosatelliterdquo boxes in the environment (often these are
test lab boxes or available desktop boxes) The QuerySurgetrade Agent when it receives a bundle of queries can run
multiple queries simultaneously (in parallel)
One of the features QuerySurgetrade gives you is the ability to raise your lsquotesting throughputrsquo The idea is to be able to fire
off QueryPairs in bulk against your sources and targets so that you can execute at the highest level your environment
can support The QuerySurgetrade Agent lets you do this because you can deploy multiple Agents in your environment ndash on
lsquosatellitersquo boxes surrounding your QuerySurgetrade server (note that each Agent can run multiple query threads as well)
QuerySurgetrade allows you to install up to 10 Agents
More Agents = more queries = more throughput
How many Agents are appropriate for your environment The answer is ndash you find out by experimentation Once you
have built an initial test library start with 2 or 3 Agents and see how your sources and targets behave Add additional
Agents in a subsequent cycle again monitoring the source and target behavior As you continue to add Agents the loads
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
10
on sources and targets will grow with query volume ndash and sourcetarget response times will start to grow as well Once
you have identified the level where response times have started to increase back down to the previous level This level
is roughly the maximum throughput your current environment can support
For more information on Agents please visit AdministrationAgents in the Help guide
Database Data Warehouse Support
In principle QuerySurgetrade can support any JDBC-compliant data source QuerySurgetrade currently ships with Oracle
MySQL Teradata Aster SQL Server DB2 Informix Netezza Sybase in-memory database and flat file support and
supports many other data sources
Installation Requirements
For a trial installation the QuerySurgetrade application server the QuerySurgetrade database server and QuerySurgetrade Agents
may be installed either on a single box or on separate boxes Minimum requirements for a single box installation are 4
GB of memory and 100 GB of disk space More memory and disk space will always provide better performance
Deploying to a distributed environment with multiple boxes or VM images (ie database server on one box app server
on another Agent(s) on other boxes) will have a positive impact on the query size data volume and QuerySurgetrade
performance that can be handled during the trial For additional information on system requirements please refer to
the document QuerySurgetrade System Requirements
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
11
QuerySurgetrade Terminology
QueryPair
A pair of SQL queries where one query retrieves data from a source file or database and
another SQL query that retrieves data from a target database data warehouse or data mart
Agent
Performs the actual query tasks Agents execute queries against source and target data stores and return
the results to the QuerySurgetrade database
Design-Time Run
Allows you to execute a QueryPair test to make sure that it behaves as you expect This is not intended for
actual test execution purposes
Query Snippet
Reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet is to
minimize the number of places you need to make changes on the same code in different SQL calls
Test Suite
A collection of QueryPairs used for execution This feature allows you to group your QueryPairs execution
purposes that is independent of your lsquoDesign Libraryrsquo organization
Scenarios
A collection of Suites that are scheduled for execution
Query Wizard
A tool that allows you to generate QueryPairs automatically requiring no SQL coding It is a fast and easy
way to create QueryPairs for both manual testers who do not have SQL skills as well as for testers who are
skilled at SQL and want to speed up test authoring The Query Wizard generates tests that can cover about
80 of all data in a data warehouse automatically 1
Widgets
Project Widgets give you a real-time view into your project progress at all levels from QueryPair
development to execution and results
Command Line Integration
Provides the ability to schedule Test Suites to run using Windows Task Scheduler or integrate with a
continuous build system
1 A recent poll conducted by RTTS on targeted LinkedIn groups found that 80 of columns in data warehouse tables have no transformations
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
12
QuerySurgetrade
QuickStart Guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
13
Login to QuerySurgetrade
Upon QuerySurgetrade installation one Administrative user is created for you to get started
1 On the installation machine click the lsquoStartrsquo button
2 In the lsquoStartrsquo menu select All Programs QuerySurgetrade Launch QuerySurgetrade
3 QuerySurgetrade will launch in your default browser
4 Enter Username ldquoadminrdquo and password ldquoadminrdquo and click the lsquoLoginrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
14
Create a QueryPair test from scratch
A QueryPair is what QuerySurgetrade refers to as a pair of queries that have the following characteristics
o One SQL query that retrieves data from a source file or database and o Another SQL query that retrieves data from a target big data store data warehouse data mart or database
These two queries together comprise a QueryPair
1 Click the lsquoQueryPairsrsquo folder in the lsquoDesign Libraryrsquo panel
2 Click the lsquoCreate New QueryPairrsquo button
3 Enter ldquoMy Test QueryPairrdquo in the lsquoQueryPair Namersquo field and enter ldquoMy first QueryPairrdquo in the lsquoDescriptionrsquo field
Points of interest
o The lsquoCreate a New QueryPairrsquo dialog contains
QueryPair Name field ndash a name for your QueryPair
Description field ndash a description for your QueryPair
Mapping field ndash for reference back to a mapping document if applicable (Data mapping is a
process used in data warehousing by which different data models are linked to each other
Mappings are typically used for transformations in the ETL process or for consolidation of
multiple databases and or redundant columns )
4 Click the lsquoSaversquo button on the lsquoCreate New QueryPairrsquo dialog and the new QueryPair tab will open
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
15
Points of interest
o The lsquoQueryPairrsquo tab contains
lsquoSourcersquo and lsquoConnectionrsquo ndash for storing the source query with a connection
lsquoTargetrsquo and lsquoConnectionrsquo ndash for storing the target query with a connection
lsquoSaversquo icons ndash for saving the source or target query
5 Enter your SQL in the lsquoSourcersquo query text lsquoEditorrsquo (copypaste will work)
6 Select your source DB from the source lsquoConnectionrsquo drop-down
7 Enter your SQL in the lsquoTargetrsquo query text lsquoEditorrsquo (copypaste will work)
8 Select your target DB from the target lsquoConnectionrsquo drop-down
Points of interest
o In the screenshot above lsquocountryNamersquo is the column name in the source COUNTRYISO table
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
16
o In the screenshot above lsquocountryNamersquo is the column name in the target lsquoCountryrsquo table (same name in
both source and target)
o For demonstration purposes both columns were aliased to lsquoCountryrsquo QuerySurgetrade does not require
both source and target columns to be named the same (although this is a best practice) however the
columns need to be in the same logical order between source and target
9 Click the lsquoSaversquo icon on both the source and target queries
For more information on QueryPairs please visit Design LibraryQueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
17
Review of QuerySurgetrade Agent and Agent Status
QuerySurgetrade Agents perform the actual query tasks Agents execute queries against source and target data stores and return the results to QuerySurgetrade When you install a QuerySurgetrade Agent the installer will ask you for the URL of your QuerySurgetrade installation The installer will then install and start the Agent When the Agent starts it will check its registration status with QuerySurgetrade and it will auto-register if necessary
1 Agent status can be determined visually via the Agent icon in the bottom right of the GUI
Points of interest
o Agent icon appears red on bottom when busy
o Agent icon appears yellow on bottom when idle
o Agent icon appears gray on bottom when offline
o Mouse-over the Agent icon to reveal the status of all Agents
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
18
2 Click the Agent icon to open an lsquoAgent Activityrsquo window
Points of interest
o The lsquoAgent Activityrsquo window contains
Hostname ndash the names of all Agents that have been added
Status ndash Agents can be Idle Offline or Running a Scenario
Last Ping ndash date and time the Agent last communicated with QuerySurgetrade Active Agents
display a checked green symbol inactive Agents display an Xrsquod red symbol
Additional points
o You may install multiple QuerySurgetrade Agents up to the number that your license permits
o Each QuerySurgetrade Agent deployed in your environment needs at least one JDBC driver to work with
your data sources A JDBC driver is a piece of software that allows your Agent to talk to a data source
So for example if you plan to use QuerySurgetrade with Oracle and Teradata you will need to install both
the Oracle and the Teradata drivers with each Agent
o The QuerySurgetrade Installer comes bundled with JDBC drivers for several industry-standard databases
and you can install these drivers when you install the Agent
o You can always add new drivers using the installer after you have installed an Agent
o Your JDBC driver product may not be bundled with QuerySurgetrade if not you will have to deploy the
JDBC driver(s) manually to the Agent machine For more information see Adding JDBC Drivers
o QuerySurgetrade Agent installs as a service by default
For more information on Agents please visit AdministrationAgents in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
19
Design-Time Run execution of an existing QueryPair test
The lsquoDesign-Time Runrsquo tab displays detailed results for each QueryPair This tab allows you to execute a QueryPair test
run to make sure that it behaves as you expect This is not intended for actual testing execution purposes
1 Click on the + next to the lsquoQueryPairsrsquo folder on the left to expand the folder
Points of interest
o QuerySurgetrade utilizes a folder structure similar to Microsoft Windows Explorer
o Multiple sub-folders can be contained within folders
o QueryPairs are contained within each folder
2 Double-click your QueryPair to open it
Points of interest
A QueryPair has the following tabs
o The lsquoQueryPairrsquo tab contains
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
20
lsquoSource Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoTarget Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoSaversquo icons ndash for saving the source or target query
o The lsquoPropertiesrsquo tab contains
QueryPair name description and mapping fields
Data Type Checking ndash Ability to check data types or convert all types to varchar (String)
before comparison
Row Count Options ndash to set reporting for row count differences
Key Column Definition ndash to set a column from either the source or target query as key
Row Duplicate Options ndash to set whether or not QuerySurgetrade checks for duplicate rows
o The lsquoDesign-Time Runrsquo tab contains
Detailed results for each QueryPair This tab allows you to execute a QueryPair test run to
make sure that it behaves as you expect
o The lsquoHistoryrsquo tab shows the history of changes to the QueryPair
o The lsquoDTR Historyrsquo tab shows passfail information from previous lsquoDesign-Time Runsrsquo (currently
empty as no runs have been executed yet)
3 Click the lsquoDesign-Time Runrsquo tab
Points of interest
o The lsquoDesign-Time Runrsquo tab allows you to execute a test run to make sure that the QueryPair behaves as
you expect (not for actual testing execution purposes)
o The first time clicking on the rsquoDesign-Time Runrsquo will indicate that a run has not occurred previously for a
QueryPair
o A specific Agent if desired can be selected in the drop down menu (not required )
o Once you perform a lsquoDesign-Time Runrsquo the most recent results will always display here
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
21
4 Click the lsquoRunrsquo button to execute the QueryPair
Points of interest
o When executing a lsquoDesign-Time Runrsquo QuerySurgetrade goes through the following phases
Loading ndash QuerySurgetrade is loading the SQL pairs onto the Agent for execution
Running ndash The Agent is running the target and source queries
Analyzing ndash QuerySurgetrade is comparing the results
o QuerySurgetrade displays the following information about the last lsquoDesign-Time Runrsquo
Source Rows ndash number of source rows returned
Target Rows ndash number of target rows returned
Row Count Difference ndash number of rows different between source and target
Failed Row Count ndash number of rows with data differences
Non-Matching Source Rows ndash number of source rows not found in the target (based on key
column(s))
Non-Matching Target Rows ndash number of target rows not found in the source (based on key
column(s))
o lsquoConnectionsrsquo and lsquoQuery Performancersquo metrics are displayed
5 Click the lsquoView Query Resultsrsquo button to bring up the results window
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
22
Points of interest
o The lsquoQueryPair Resultsrsquo window contains five tabs
Source Tab ndash displays the source result rows
Target Tab ndash displays the target result rows
Failures Tab ndash displays data failures (not populated in this example as no rows failed)
Source Query Tab ndash displays the source query
Target Query Tab ndash displays the target query
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
23
Create a Reusable Query Snippet
A query Snippet is a reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet
is to minimize the number of places you need to make changes on the same code in different SQL calls A Snippet does
not have to be a syntactically intact query (for example it might just be a WHERE clause) but there is no reason why it
canrsquot be a complete query (eg a reusable sub-query) This feature lets you develop libraries of lsquoReusable Query
Snippetsrsquo to be reused in multiple queries If a Snippet shared by multiple queries needs to change you can make the
change once and all of the queries using the Snippet are changed automatically
To create a lsquoReusable Query Snippetrsquo
1 Click the lsquoReusable Query Snippetsrsquo folder in the lsquoDesign Libraryrsquo
2 Click the lsquoCreate New Reusable Query Snippetrsquo button
3 Enter ldquoMy Test Snippetrdquo in the lsquoReusable Query Snippet Namersquo field and enter ldquoMy first reusable query snippetrdquo
in the lsquoDescriptionrsquo field
4 Click the lsquoSaversquo button on the lsquoCreate New Reusable Query Snippetrsquo dialog
5 Enter your SQL in the lsquoReusable Query Snippetrsquo text lsquoEditorrsquo (copypaste will work)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
24
Points of interest
o A lsquoReusable Query Snippetrsquo has the following tabs
Reusable Query ndash where the SQL resides
Properties ndash for additional descriptive information and metadata
History ndash shows the history of changes made to the Snippet
Appearances ndash shows which QueryPairs contain the Snippet
6 Click the lsquoSaversquo button to save your lsquoReusable Query Snippetrsquo
7 The newly created lsquoReusable Query Snippetrsquo is added to the lsquoDesign Libraryrsquo and is now available for use
Adding a lsquoReusable Query Snippetrsquo to a QueryPair
1 Open the ldquoMy Test QueryPairrdquo previously created
2 Place your cursor within the existing SQL query where you would like to add the Snippet
3 Click the lsquoAdd Reusable Query Snippetrsquo button
4 Click the lsquoReusable Query Snippetsrsquo folder on the left panel
5 Select lsquoMy Test Snippetrsquo in the top right panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
25
Points of interest
o The left panel utilizes a folder structure similar to Microsoft Windows Explorer (your Snippet is saved
in the root folder but can be grouped by subfolders manually)
o The top right pane displays the lsquoReusable Query Snippetsrsquo including the one you created earlier
o The bottom right panel displays the SQL of the selected Snippet
6 Click the lsquoOKrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
9
About the QuerySurgetrade Architecture
QuerySurgetrade is a locally installed browser-based testing tool Supporting all current browsers (Chrome Firefox IE
Safari etc) QuerySurgetrade is perfect for teams that are geographically distributed QuerySurgetrade extracts the data-
under-test to its own separate
infrastructure which eliminates processing
overhead on the source and target database
servers in your data warehouse
architecture The QuerySurgetrade architecture
is comprised of an application server
database server and Agents
QuerySurgetrade Application Server and
Database
QuerySurgetrade utilizes a Tomcat application
server and a MySQL database The database
is bundled with and embedded within the
product
QuerySurgetrade Agents
QuerySurgetrade Agents are the components of the architecture that execute queries against source and target data
sources returning the results to the QuerySurgetrade database The Agents execute SQL queries validating each piece of
data throughout the ETL process This exposes all data mismatch failures row count differences and column type
mismatch failures affording you the ability to test to 100 of your data quickly
Although the Agents issue queries to both the source and target databases they do not reside on the physical source or
target database boxes QuerySurgetrade Agents can be deployed on the same box as the QuerySurgetrade Application Server
and QuerySurgetrade Database Server in a single box install or on any ldquosatelliterdquo boxes in the environment (often these are
test lab boxes or available desktop boxes) The QuerySurgetrade Agent when it receives a bundle of queries can run
multiple queries simultaneously (in parallel)
One of the features QuerySurgetrade gives you is the ability to raise your lsquotesting throughputrsquo The idea is to be able to fire
off QueryPairs in bulk against your sources and targets so that you can execute at the highest level your environment
can support The QuerySurgetrade Agent lets you do this because you can deploy multiple Agents in your environment ndash on
lsquosatellitersquo boxes surrounding your QuerySurgetrade server (note that each Agent can run multiple query threads as well)
QuerySurgetrade allows you to install up to 10 Agents
More Agents = more queries = more throughput
How many Agents are appropriate for your environment The answer is ndash you find out by experimentation Once you
have built an initial test library start with 2 or 3 Agents and see how your sources and targets behave Add additional
Agents in a subsequent cycle again monitoring the source and target behavior As you continue to add Agents the loads
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
10
on sources and targets will grow with query volume ndash and sourcetarget response times will start to grow as well Once
you have identified the level where response times have started to increase back down to the previous level This level
is roughly the maximum throughput your current environment can support
For more information on Agents please visit AdministrationAgents in the Help guide
Database Data Warehouse Support
In principle QuerySurgetrade can support any JDBC-compliant data source QuerySurgetrade currently ships with Oracle
MySQL Teradata Aster SQL Server DB2 Informix Netezza Sybase in-memory database and flat file support and
supports many other data sources
Installation Requirements
For a trial installation the QuerySurgetrade application server the QuerySurgetrade database server and QuerySurgetrade Agents
may be installed either on a single box or on separate boxes Minimum requirements for a single box installation are 4
GB of memory and 100 GB of disk space More memory and disk space will always provide better performance
Deploying to a distributed environment with multiple boxes or VM images (ie database server on one box app server
on another Agent(s) on other boxes) will have a positive impact on the query size data volume and QuerySurgetrade
performance that can be handled during the trial For additional information on system requirements please refer to
the document QuerySurgetrade System Requirements
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
11
QuerySurgetrade Terminology
QueryPair
A pair of SQL queries where one query retrieves data from a source file or database and
another SQL query that retrieves data from a target database data warehouse or data mart
Agent
Performs the actual query tasks Agents execute queries against source and target data stores and return
the results to the QuerySurgetrade database
Design-Time Run
Allows you to execute a QueryPair test to make sure that it behaves as you expect This is not intended for
actual test execution purposes
Query Snippet
Reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet is to
minimize the number of places you need to make changes on the same code in different SQL calls
Test Suite
A collection of QueryPairs used for execution This feature allows you to group your QueryPairs execution
purposes that is independent of your lsquoDesign Libraryrsquo organization
Scenarios
A collection of Suites that are scheduled for execution
Query Wizard
A tool that allows you to generate QueryPairs automatically requiring no SQL coding It is a fast and easy
way to create QueryPairs for both manual testers who do not have SQL skills as well as for testers who are
skilled at SQL and want to speed up test authoring The Query Wizard generates tests that can cover about
80 of all data in a data warehouse automatically 1
Widgets
Project Widgets give you a real-time view into your project progress at all levels from QueryPair
development to execution and results
Command Line Integration
Provides the ability to schedule Test Suites to run using Windows Task Scheduler or integrate with a
continuous build system
1 A recent poll conducted by RTTS on targeted LinkedIn groups found that 80 of columns in data warehouse tables have no transformations
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
12
QuerySurgetrade
QuickStart Guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
13
Login to QuerySurgetrade
Upon QuerySurgetrade installation one Administrative user is created for you to get started
1 On the installation machine click the lsquoStartrsquo button
2 In the lsquoStartrsquo menu select All Programs QuerySurgetrade Launch QuerySurgetrade
3 QuerySurgetrade will launch in your default browser
4 Enter Username ldquoadminrdquo and password ldquoadminrdquo and click the lsquoLoginrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
14
Create a QueryPair test from scratch
A QueryPair is what QuerySurgetrade refers to as a pair of queries that have the following characteristics
o One SQL query that retrieves data from a source file or database and o Another SQL query that retrieves data from a target big data store data warehouse data mart or database
These two queries together comprise a QueryPair
1 Click the lsquoQueryPairsrsquo folder in the lsquoDesign Libraryrsquo panel
2 Click the lsquoCreate New QueryPairrsquo button
3 Enter ldquoMy Test QueryPairrdquo in the lsquoQueryPair Namersquo field and enter ldquoMy first QueryPairrdquo in the lsquoDescriptionrsquo field
Points of interest
o The lsquoCreate a New QueryPairrsquo dialog contains
QueryPair Name field ndash a name for your QueryPair
Description field ndash a description for your QueryPair
Mapping field ndash for reference back to a mapping document if applicable (Data mapping is a
process used in data warehousing by which different data models are linked to each other
Mappings are typically used for transformations in the ETL process or for consolidation of
multiple databases and or redundant columns )
4 Click the lsquoSaversquo button on the lsquoCreate New QueryPairrsquo dialog and the new QueryPair tab will open
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
15
Points of interest
o The lsquoQueryPairrsquo tab contains
lsquoSourcersquo and lsquoConnectionrsquo ndash for storing the source query with a connection
lsquoTargetrsquo and lsquoConnectionrsquo ndash for storing the target query with a connection
lsquoSaversquo icons ndash for saving the source or target query
5 Enter your SQL in the lsquoSourcersquo query text lsquoEditorrsquo (copypaste will work)
6 Select your source DB from the source lsquoConnectionrsquo drop-down
7 Enter your SQL in the lsquoTargetrsquo query text lsquoEditorrsquo (copypaste will work)
8 Select your target DB from the target lsquoConnectionrsquo drop-down
Points of interest
o In the screenshot above lsquocountryNamersquo is the column name in the source COUNTRYISO table
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
16
o In the screenshot above lsquocountryNamersquo is the column name in the target lsquoCountryrsquo table (same name in
both source and target)
o For demonstration purposes both columns were aliased to lsquoCountryrsquo QuerySurgetrade does not require
both source and target columns to be named the same (although this is a best practice) however the
columns need to be in the same logical order between source and target
9 Click the lsquoSaversquo icon on both the source and target queries
For more information on QueryPairs please visit Design LibraryQueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
17
Review of QuerySurgetrade Agent and Agent Status
QuerySurgetrade Agents perform the actual query tasks Agents execute queries against source and target data stores and return the results to QuerySurgetrade When you install a QuerySurgetrade Agent the installer will ask you for the URL of your QuerySurgetrade installation The installer will then install and start the Agent When the Agent starts it will check its registration status with QuerySurgetrade and it will auto-register if necessary
1 Agent status can be determined visually via the Agent icon in the bottom right of the GUI
Points of interest
o Agent icon appears red on bottom when busy
o Agent icon appears yellow on bottom when idle
o Agent icon appears gray on bottom when offline
o Mouse-over the Agent icon to reveal the status of all Agents
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
18
2 Click the Agent icon to open an lsquoAgent Activityrsquo window
Points of interest
o The lsquoAgent Activityrsquo window contains
Hostname ndash the names of all Agents that have been added
Status ndash Agents can be Idle Offline or Running a Scenario
Last Ping ndash date and time the Agent last communicated with QuerySurgetrade Active Agents
display a checked green symbol inactive Agents display an Xrsquod red symbol
Additional points
o You may install multiple QuerySurgetrade Agents up to the number that your license permits
o Each QuerySurgetrade Agent deployed in your environment needs at least one JDBC driver to work with
your data sources A JDBC driver is a piece of software that allows your Agent to talk to a data source
So for example if you plan to use QuerySurgetrade with Oracle and Teradata you will need to install both
the Oracle and the Teradata drivers with each Agent
o The QuerySurgetrade Installer comes bundled with JDBC drivers for several industry-standard databases
and you can install these drivers when you install the Agent
o You can always add new drivers using the installer after you have installed an Agent
o Your JDBC driver product may not be bundled with QuerySurgetrade if not you will have to deploy the
JDBC driver(s) manually to the Agent machine For more information see Adding JDBC Drivers
o QuerySurgetrade Agent installs as a service by default
For more information on Agents please visit AdministrationAgents in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
19
Design-Time Run execution of an existing QueryPair test
The lsquoDesign-Time Runrsquo tab displays detailed results for each QueryPair This tab allows you to execute a QueryPair test
run to make sure that it behaves as you expect This is not intended for actual testing execution purposes
1 Click on the + next to the lsquoQueryPairsrsquo folder on the left to expand the folder
Points of interest
o QuerySurgetrade utilizes a folder structure similar to Microsoft Windows Explorer
o Multiple sub-folders can be contained within folders
o QueryPairs are contained within each folder
2 Double-click your QueryPair to open it
Points of interest
A QueryPair has the following tabs
o The lsquoQueryPairrsquo tab contains
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
20
lsquoSource Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoTarget Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoSaversquo icons ndash for saving the source or target query
o The lsquoPropertiesrsquo tab contains
QueryPair name description and mapping fields
Data Type Checking ndash Ability to check data types or convert all types to varchar (String)
before comparison
Row Count Options ndash to set reporting for row count differences
Key Column Definition ndash to set a column from either the source or target query as key
Row Duplicate Options ndash to set whether or not QuerySurgetrade checks for duplicate rows
o The lsquoDesign-Time Runrsquo tab contains
Detailed results for each QueryPair This tab allows you to execute a QueryPair test run to
make sure that it behaves as you expect
o The lsquoHistoryrsquo tab shows the history of changes to the QueryPair
o The lsquoDTR Historyrsquo tab shows passfail information from previous lsquoDesign-Time Runsrsquo (currently
empty as no runs have been executed yet)
3 Click the lsquoDesign-Time Runrsquo tab
Points of interest
o The lsquoDesign-Time Runrsquo tab allows you to execute a test run to make sure that the QueryPair behaves as
you expect (not for actual testing execution purposes)
o The first time clicking on the rsquoDesign-Time Runrsquo will indicate that a run has not occurred previously for a
QueryPair
o A specific Agent if desired can be selected in the drop down menu (not required )
o Once you perform a lsquoDesign-Time Runrsquo the most recent results will always display here
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
21
4 Click the lsquoRunrsquo button to execute the QueryPair
Points of interest
o When executing a lsquoDesign-Time Runrsquo QuerySurgetrade goes through the following phases
Loading ndash QuerySurgetrade is loading the SQL pairs onto the Agent for execution
Running ndash The Agent is running the target and source queries
Analyzing ndash QuerySurgetrade is comparing the results
o QuerySurgetrade displays the following information about the last lsquoDesign-Time Runrsquo
Source Rows ndash number of source rows returned
Target Rows ndash number of target rows returned
Row Count Difference ndash number of rows different between source and target
Failed Row Count ndash number of rows with data differences
Non-Matching Source Rows ndash number of source rows not found in the target (based on key
column(s))
Non-Matching Target Rows ndash number of target rows not found in the source (based on key
column(s))
o lsquoConnectionsrsquo and lsquoQuery Performancersquo metrics are displayed
5 Click the lsquoView Query Resultsrsquo button to bring up the results window
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
22
Points of interest
o The lsquoQueryPair Resultsrsquo window contains five tabs
Source Tab ndash displays the source result rows
Target Tab ndash displays the target result rows
Failures Tab ndash displays data failures (not populated in this example as no rows failed)
Source Query Tab ndash displays the source query
Target Query Tab ndash displays the target query
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
23
Create a Reusable Query Snippet
A query Snippet is a reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet
is to minimize the number of places you need to make changes on the same code in different SQL calls A Snippet does
not have to be a syntactically intact query (for example it might just be a WHERE clause) but there is no reason why it
canrsquot be a complete query (eg a reusable sub-query) This feature lets you develop libraries of lsquoReusable Query
Snippetsrsquo to be reused in multiple queries If a Snippet shared by multiple queries needs to change you can make the
change once and all of the queries using the Snippet are changed automatically
To create a lsquoReusable Query Snippetrsquo
1 Click the lsquoReusable Query Snippetsrsquo folder in the lsquoDesign Libraryrsquo
2 Click the lsquoCreate New Reusable Query Snippetrsquo button
3 Enter ldquoMy Test Snippetrdquo in the lsquoReusable Query Snippet Namersquo field and enter ldquoMy first reusable query snippetrdquo
in the lsquoDescriptionrsquo field
4 Click the lsquoSaversquo button on the lsquoCreate New Reusable Query Snippetrsquo dialog
5 Enter your SQL in the lsquoReusable Query Snippetrsquo text lsquoEditorrsquo (copypaste will work)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
24
Points of interest
o A lsquoReusable Query Snippetrsquo has the following tabs
Reusable Query ndash where the SQL resides
Properties ndash for additional descriptive information and metadata
History ndash shows the history of changes made to the Snippet
Appearances ndash shows which QueryPairs contain the Snippet
6 Click the lsquoSaversquo button to save your lsquoReusable Query Snippetrsquo
7 The newly created lsquoReusable Query Snippetrsquo is added to the lsquoDesign Libraryrsquo and is now available for use
Adding a lsquoReusable Query Snippetrsquo to a QueryPair
1 Open the ldquoMy Test QueryPairrdquo previously created
2 Place your cursor within the existing SQL query where you would like to add the Snippet
3 Click the lsquoAdd Reusable Query Snippetrsquo button
4 Click the lsquoReusable Query Snippetsrsquo folder on the left panel
5 Select lsquoMy Test Snippetrsquo in the top right panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
25
Points of interest
o The left panel utilizes a folder structure similar to Microsoft Windows Explorer (your Snippet is saved
in the root folder but can be grouped by subfolders manually)
o The top right pane displays the lsquoReusable Query Snippetsrsquo including the one you created earlier
o The bottom right panel displays the SQL of the selected Snippet
6 Click the lsquoOKrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
10
on sources and targets will grow with query volume ndash and sourcetarget response times will start to grow as well Once
you have identified the level where response times have started to increase back down to the previous level This level
is roughly the maximum throughput your current environment can support
For more information on Agents please visit AdministrationAgents in the Help guide
Database Data Warehouse Support
In principle QuerySurgetrade can support any JDBC-compliant data source QuerySurgetrade currently ships with Oracle
MySQL Teradata Aster SQL Server DB2 Informix Netezza Sybase in-memory database and flat file support and
supports many other data sources
Installation Requirements
For a trial installation the QuerySurgetrade application server the QuerySurgetrade database server and QuerySurgetrade Agents
may be installed either on a single box or on separate boxes Minimum requirements for a single box installation are 4
GB of memory and 100 GB of disk space More memory and disk space will always provide better performance
Deploying to a distributed environment with multiple boxes or VM images (ie database server on one box app server
on another Agent(s) on other boxes) will have a positive impact on the query size data volume and QuerySurgetrade
performance that can be handled during the trial For additional information on system requirements please refer to
the document QuerySurgetrade System Requirements
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
11
QuerySurgetrade Terminology
QueryPair
A pair of SQL queries where one query retrieves data from a source file or database and
another SQL query that retrieves data from a target database data warehouse or data mart
Agent
Performs the actual query tasks Agents execute queries against source and target data stores and return
the results to the QuerySurgetrade database
Design-Time Run
Allows you to execute a QueryPair test to make sure that it behaves as you expect This is not intended for
actual test execution purposes
Query Snippet
Reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet is to
minimize the number of places you need to make changes on the same code in different SQL calls
Test Suite
A collection of QueryPairs used for execution This feature allows you to group your QueryPairs execution
purposes that is independent of your lsquoDesign Libraryrsquo organization
Scenarios
A collection of Suites that are scheduled for execution
Query Wizard
A tool that allows you to generate QueryPairs automatically requiring no SQL coding It is a fast and easy
way to create QueryPairs for both manual testers who do not have SQL skills as well as for testers who are
skilled at SQL and want to speed up test authoring The Query Wizard generates tests that can cover about
80 of all data in a data warehouse automatically 1
Widgets
Project Widgets give you a real-time view into your project progress at all levels from QueryPair
development to execution and results
Command Line Integration
Provides the ability to schedule Test Suites to run using Windows Task Scheduler or integrate with a
continuous build system
1 A recent poll conducted by RTTS on targeted LinkedIn groups found that 80 of columns in data warehouse tables have no transformations
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
12
QuerySurgetrade
QuickStart Guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
13
Login to QuerySurgetrade
Upon QuerySurgetrade installation one Administrative user is created for you to get started
1 On the installation machine click the lsquoStartrsquo button
2 In the lsquoStartrsquo menu select All Programs QuerySurgetrade Launch QuerySurgetrade
3 QuerySurgetrade will launch in your default browser
4 Enter Username ldquoadminrdquo and password ldquoadminrdquo and click the lsquoLoginrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
14
Create a QueryPair test from scratch
A QueryPair is what QuerySurgetrade refers to as a pair of queries that have the following characteristics
o One SQL query that retrieves data from a source file or database and o Another SQL query that retrieves data from a target big data store data warehouse data mart or database
These two queries together comprise a QueryPair
1 Click the lsquoQueryPairsrsquo folder in the lsquoDesign Libraryrsquo panel
2 Click the lsquoCreate New QueryPairrsquo button
3 Enter ldquoMy Test QueryPairrdquo in the lsquoQueryPair Namersquo field and enter ldquoMy first QueryPairrdquo in the lsquoDescriptionrsquo field
Points of interest
o The lsquoCreate a New QueryPairrsquo dialog contains
QueryPair Name field ndash a name for your QueryPair
Description field ndash a description for your QueryPair
Mapping field ndash for reference back to a mapping document if applicable (Data mapping is a
process used in data warehousing by which different data models are linked to each other
Mappings are typically used for transformations in the ETL process or for consolidation of
multiple databases and or redundant columns )
4 Click the lsquoSaversquo button on the lsquoCreate New QueryPairrsquo dialog and the new QueryPair tab will open
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
15
Points of interest
o The lsquoQueryPairrsquo tab contains
lsquoSourcersquo and lsquoConnectionrsquo ndash for storing the source query with a connection
lsquoTargetrsquo and lsquoConnectionrsquo ndash for storing the target query with a connection
lsquoSaversquo icons ndash for saving the source or target query
5 Enter your SQL in the lsquoSourcersquo query text lsquoEditorrsquo (copypaste will work)
6 Select your source DB from the source lsquoConnectionrsquo drop-down
7 Enter your SQL in the lsquoTargetrsquo query text lsquoEditorrsquo (copypaste will work)
8 Select your target DB from the target lsquoConnectionrsquo drop-down
Points of interest
o In the screenshot above lsquocountryNamersquo is the column name in the source COUNTRYISO table
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
16
o In the screenshot above lsquocountryNamersquo is the column name in the target lsquoCountryrsquo table (same name in
both source and target)
o For demonstration purposes both columns were aliased to lsquoCountryrsquo QuerySurgetrade does not require
both source and target columns to be named the same (although this is a best practice) however the
columns need to be in the same logical order between source and target
9 Click the lsquoSaversquo icon on both the source and target queries
For more information on QueryPairs please visit Design LibraryQueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
17
Review of QuerySurgetrade Agent and Agent Status
QuerySurgetrade Agents perform the actual query tasks Agents execute queries against source and target data stores and return the results to QuerySurgetrade When you install a QuerySurgetrade Agent the installer will ask you for the URL of your QuerySurgetrade installation The installer will then install and start the Agent When the Agent starts it will check its registration status with QuerySurgetrade and it will auto-register if necessary
1 Agent status can be determined visually via the Agent icon in the bottom right of the GUI
Points of interest
o Agent icon appears red on bottom when busy
o Agent icon appears yellow on bottom when idle
o Agent icon appears gray on bottom when offline
o Mouse-over the Agent icon to reveal the status of all Agents
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
18
2 Click the Agent icon to open an lsquoAgent Activityrsquo window
Points of interest
o The lsquoAgent Activityrsquo window contains
Hostname ndash the names of all Agents that have been added
Status ndash Agents can be Idle Offline or Running a Scenario
Last Ping ndash date and time the Agent last communicated with QuerySurgetrade Active Agents
display a checked green symbol inactive Agents display an Xrsquod red symbol
Additional points
o You may install multiple QuerySurgetrade Agents up to the number that your license permits
o Each QuerySurgetrade Agent deployed in your environment needs at least one JDBC driver to work with
your data sources A JDBC driver is a piece of software that allows your Agent to talk to a data source
So for example if you plan to use QuerySurgetrade with Oracle and Teradata you will need to install both
the Oracle and the Teradata drivers with each Agent
o The QuerySurgetrade Installer comes bundled with JDBC drivers for several industry-standard databases
and you can install these drivers when you install the Agent
o You can always add new drivers using the installer after you have installed an Agent
o Your JDBC driver product may not be bundled with QuerySurgetrade if not you will have to deploy the
JDBC driver(s) manually to the Agent machine For more information see Adding JDBC Drivers
o QuerySurgetrade Agent installs as a service by default
For more information on Agents please visit AdministrationAgents in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
19
Design-Time Run execution of an existing QueryPair test
The lsquoDesign-Time Runrsquo tab displays detailed results for each QueryPair This tab allows you to execute a QueryPair test
run to make sure that it behaves as you expect This is not intended for actual testing execution purposes
1 Click on the + next to the lsquoQueryPairsrsquo folder on the left to expand the folder
Points of interest
o QuerySurgetrade utilizes a folder structure similar to Microsoft Windows Explorer
o Multiple sub-folders can be contained within folders
o QueryPairs are contained within each folder
2 Double-click your QueryPair to open it
Points of interest
A QueryPair has the following tabs
o The lsquoQueryPairrsquo tab contains
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
20
lsquoSource Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoTarget Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoSaversquo icons ndash for saving the source or target query
o The lsquoPropertiesrsquo tab contains
QueryPair name description and mapping fields
Data Type Checking ndash Ability to check data types or convert all types to varchar (String)
before comparison
Row Count Options ndash to set reporting for row count differences
Key Column Definition ndash to set a column from either the source or target query as key
Row Duplicate Options ndash to set whether or not QuerySurgetrade checks for duplicate rows
o The lsquoDesign-Time Runrsquo tab contains
Detailed results for each QueryPair This tab allows you to execute a QueryPair test run to
make sure that it behaves as you expect
o The lsquoHistoryrsquo tab shows the history of changes to the QueryPair
o The lsquoDTR Historyrsquo tab shows passfail information from previous lsquoDesign-Time Runsrsquo (currently
empty as no runs have been executed yet)
3 Click the lsquoDesign-Time Runrsquo tab
Points of interest
o The lsquoDesign-Time Runrsquo tab allows you to execute a test run to make sure that the QueryPair behaves as
you expect (not for actual testing execution purposes)
o The first time clicking on the rsquoDesign-Time Runrsquo will indicate that a run has not occurred previously for a
QueryPair
o A specific Agent if desired can be selected in the drop down menu (not required )
o Once you perform a lsquoDesign-Time Runrsquo the most recent results will always display here
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
21
4 Click the lsquoRunrsquo button to execute the QueryPair
Points of interest
o When executing a lsquoDesign-Time Runrsquo QuerySurgetrade goes through the following phases
Loading ndash QuerySurgetrade is loading the SQL pairs onto the Agent for execution
Running ndash The Agent is running the target and source queries
Analyzing ndash QuerySurgetrade is comparing the results
o QuerySurgetrade displays the following information about the last lsquoDesign-Time Runrsquo
Source Rows ndash number of source rows returned
Target Rows ndash number of target rows returned
Row Count Difference ndash number of rows different between source and target
Failed Row Count ndash number of rows with data differences
Non-Matching Source Rows ndash number of source rows not found in the target (based on key
column(s))
Non-Matching Target Rows ndash number of target rows not found in the source (based on key
column(s))
o lsquoConnectionsrsquo and lsquoQuery Performancersquo metrics are displayed
5 Click the lsquoView Query Resultsrsquo button to bring up the results window
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
22
Points of interest
o The lsquoQueryPair Resultsrsquo window contains five tabs
Source Tab ndash displays the source result rows
Target Tab ndash displays the target result rows
Failures Tab ndash displays data failures (not populated in this example as no rows failed)
Source Query Tab ndash displays the source query
Target Query Tab ndash displays the target query
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
23
Create a Reusable Query Snippet
A query Snippet is a reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet
is to minimize the number of places you need to make changes on the same code in different SQL calls A Snippet does
not have to be a syntactically intact query (for example it might just be a WHERE clause) but there is no reason why it
canrsquot be a complete query (eg a reusable sub-query) This feature lets you develop libraries of lsquoReusable Query
Snippetsrsquo to be reused in multiple queries If a Snippet shared by multiple queries needs to change you can make the
change once and all of the queries using the Snippet are changed automatically
To create a lsquoReusable Query Snippetrsquo
1 Click the lsquoReusable Query Snippetsrsquo folder in the lsquoDesign Libraryrsquo
2 Click the lsquoCreate New Reusable Query Snippetrsquo button
3 Enter ldquoMy Test Snippetrdquo in the lsquoReusable Query Snippet Namersquo field and enter ldquoMy first reusable query snippetrdquo
in the lsquoDescriptionrsquo field
4 Click the lsquoSaversquo button on the lsquoCreate New Reusable Query Snippetrsquo dialog
5 Enter your SQL in the lsquoReusable Query Snippetrsquo text lsquoEditorrsquo (copypaste will work)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
24
Points of interest
o A lsquoReusable Query Snippetrsquo has the following tabs
Reusable Query ndash where the SQL resides
Properties ndash for additional descriptive information and metadata
History ndash shows the history of changes made to the Snippet
Appearances ndash shows which QueryPairs contain the Snippet
6 Click the lsquoSaversquo button to save your lsquoReusable Query Snippetrsquo
7 The newly created lsquoReusable Query Snippetrsquo is added to the lsquoDesign Libraryrsquo and is now available for use
Adding a lsquoReusable Query Snippetrsquo to a QueryPair
1 Open the ldquoMy Test QueryPairrdquo previously created
2 Place your cursor within the existing SQL query where you would like to add the Snippet
3 Click the lsquoAdd Reusable Query Snippetrsquo button
4 Click the lsquoReusable Query Snippetsrsquo folder on the left panel
5 Select lsquoMy Test Snippetrsquo in the top right panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
25
Points of interest
o The left panel utilizes a folder structure similar to Microsoft Windows Explorer (your Snippet is saved
in the root folder but can be grouped by subfolders manually)
o The top right pane displays the lsquoReusable Query Snippetsrsquo including the one you created earlier
o The bottom right panel displays the SQL of the selected Snippet
6 Click the lsquoOKrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
11
QuerySurgetrade Terminology
QueryPair
A pair of SQL queries where one query retrieves data from a source file or database and
another SQL query that retrieves data from a target database data warehouse or data mart
Agent
Performs the actual query tasks Agents execute queries against source and target data stores and return
the results to the QuerySurgetrade database
Design-Time Run
Allows you to execute a QueryPair test to make sure that it behaves as you expect This is not intended for
actual test execution purposes
Query Snippet
Reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet is to
minimize the number of places you need to make changes on the same code in different SQL calls
Test Suite
A collection of QueryPairs used for execution This feature allows you to group your QueryPairs execution
purposes that is independent of your lsquoDesign Libraryrsquo organization
Scenarios
A collection of Suites that are scheduled for execution
Query Wizard
A tool that allows you to generate QueryPairs automatically requiring no SQL coding It is a fast and easy
way to create QueryPairs for both manual testers who do not have SQL skills as well as for testers who are
skilled at SQL and want to speed up test authoring The Query Wizard generates tests that can cover about
80 of all data in a data warehouse automatically 1
Widgets
Project Widgets give you a real-time view into your project progress at all levels from QueryPair
development to execution and results
Command Line Integration
Provides the ability to schedule Test Suites to run using Windows Task Scheduler or integrate with a
continuous build system
1 A recent poll conducted by RTTS on targeted LinkedIn groups found that 80 of columns in data warehouse tables have no transformations
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
12
QuerySurgetrade
QuickStart Guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
13
Login to QuerySurgetrade
Upon QuerySurgetrade installation one Administrative user is created for you to get started
1 On the installation machine click the lsquoStartrsquo button
2 In the lsquoStartrsquo menu select All Programs QuerySurgetrade Launch QuerySurgetrade
3 QuerySurgetrade will launch in your default browser
4 Enter Username ldquoadminrdquo and password ldquoadminrdquo and click the lsquoLoginrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
14
Create a QueryPair test from scratch
A QueryPair is what QuerySurgetrade refers to as a pair of queries that have the following characteristics
o One SQL query that retrieves data from a source file or database and o Another SQL query that retrieves data from a target big data store data warehouse data mart or database
These two queries together comprise a QueryPair
1 Click the lsquoQueryPairsrsquo folder in the lsquoDesign Libraryrsquo panel
2 Click the lsquoCreate New QueryPairrsquo button
3 Enter ldquoMy Test QueryPairrdquo in the lsquoQueryPair Namersquo field and enter ldquoMy first QueryPairrdquo in the lsquoDescriptionrsquo field
Points of interest
o The lsquoCreate a New QueryPairrsquo dialog contains
QueryPair Name field ndash a name for your QueryPair
Description field ndash a description for your QueryPair
Mapping field ndash for reference back to a mapping document if applicable (Data mapping is a
process used in data warehousing by which different data models are linked to each other
Mappings are typically used for transformations in the ETL process or for consolidation of
multiple databases and or redundant columns )
4 Click the lsquoSaversquo button on the lsquoCreate New QueryPairrsquo dialog and the new QueryPair tab will open
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
15
Points of interest
o The lsquoQueryPairrsquo tab contains
lsquoSourcersquo and lsquoConnectionrsquo ndash for storing the source query with a connection
lsquoTargetrsquo and lsquoConnectionrsquo ndash for storing the target query with a connection
lsquoSaversquo icons ndash for saving the source or target query
5 Enter your SQL in the lsquoSourcersquo query text lsquoEditorrsquo (copypaste will work)
6 Select your source DB from the source lsquoConnectionrsquo drop-down
7 Enter your SQL in the lsquoTargetrsquo query text lsquoEditorrsquo (copypaste will work)
8 Select your target DB from the target lsquoConnectionrsquo drop-down
Points of interest
o In the screenshot above lsquocountryNamersquo is the column name in the source COUNTRYISO table
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
16
o In the screenshot above lsquocountryNamersquo is the column name in the target lsquoCountryrsquo table (same name in
both source and target)
o For demonstration purposes both columns were aliased to lsquoCountryrsquo QuerySurgetrade does not require
both source and target columns to be named the same (although this is a best practice) however the
columns need to be in the same logical order between source and target
9 Click the lsquoSaversquo icon on both the source and target queries
For more information on QueryPairs please visit Design LibraryQueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
17
Review of QuerySurgetrade Agent and Agent Status
QuerySurgetrade Agents perform the actual query tasks Agents execute queries against source and target data stores and return the results to QuerySurgetrade When you install a QuerySurgetrade Agent the installer will ask you for the URL of your QuerySurgetrade installation The installer will then install and start the Agent When the Agent starts it will check its registration status with QuerySurgetrade and it will auto-register if necessary
1 Agent status can be determined visually via the Agent icon in the bottom right of the GUI
Points of interest
o Agent icon appears red on bottom when busy
o Agent icon appears yellow on bottom when idle
o Agent icon appears gray on bottom when offline
o Mouse-over the Agent icon to reveal the status of all Agents
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
18
2 Click the Agent icon to open an lsquoAgent Activityrsquo window
Points of interest
o The lsquoAgent Activityrsquo window contains
Hostname ndash the names of all Agents that have been added
Status ndash Agents can be Idle Offline or Running a Scenario
Last Ping ndash date and time the Agent last communicated with QuerySurgetrade Active Agents
display a checked green symbol inactive Agents display an Xrsquod red symbol
Additional points
o You may install multiple QuerySurgetrade Agents up to the number that your license permits
o Each QuerySurgetrade Agent deployed in your environment needs at least one JDBC driver to work with
your data sources A JDBC driver is a piece of software that allows your Agent to talk to a data source
So for example if you plan to use QuerySurgetrade with Oracle and Teradata you will need to install both
the Oracle and the Teradata drivers with each Agent
o The QuerySurgetrade Installer comes bundled with JDBC drivers for several industry-standard databases
and you can install these drivers when you install the Agent
o You can always add new drivers using the installer after you have installed an Agent
o Your JDBC driver product may not be bundled with QuerySurgetrade if not you will have to deploy the
JDBC driver(s) manually to the Agent machine For more information see Adding JDBC Drivers
o QuerySurgetrade Agent installs as a service by default
For more information on Agents please visit AdministrationAgents in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
19
Design-Time Run execution of an existing QueryPair test
The lsquoDesign-Time Runrsquo tab displays detailed results for each QueryPair This tab allows you to execute a QueryPair test
run to make sure that it behaves as you expect This is not intended for actual testing execution purposes
1 Click on the + next to the lsquoQueryPairsrsquo folder on the left to expand the folder
Points of interest
o QuerySurgetrade utilizes a folder structure similar to Microsoft Windows Explorer
o Multiple sub-folders can be contained within folders
o QueryPairs are contained within each folder
2 Double-click your QueryPair to open it
Points of interest
A QueryPair has the following tabs
o The lsquoQueryPairrsquo tab contains
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
20
lsquoSource Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoTarget Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoSaversquo icons ndash for saving the source or target query
o The lsquoPropertiesrsquo tab contains
QueryPair name description and mapping fields
Data Type Checking ndash Ability to check data types or convert all types to varchar (String)
before comparison
Row Count Options ndash to set reporting for row count differences
Key Column Definition ndash to set a column from either the source or target query as key
Row Duplicate Options ndash to set whether or not QuerySurgetrade checks for duplicate rows
o The lsquoDesign-Time Runrsquo tab contains
Detailed results for each QueryPair This tab allows you to execute a QueryPair test run to
make sure that it behaves as you expect
o The lsquoHistoryrsquo tab shows the history of changes to the QueryPair
o The lsquoDTR Historyrsquo tab shows passfail information from previous lsquoDesign-Time Runsrsquo (currently
empty as no runs have been executed yet)
3 Click the lsquoDesign-Time Runrsquo tab
Points of interest
o The lsquoDesign-Time Runrsquo tab allows you to execute a test run to make sure that the QueryPair behaves as
you expect (not for actual testing execution purposes)
o The first time clicking on the rsquoDesign-Time Runrsquo will indicate that a run has not occurred previously for a
QueryPair
o A specific Agent if desired can be selected in the drop down menu (not required )
o Once you perform a lsquoDesign-Time Runrsquo the most recent results will always display here
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
21
4 Click the lsquoRunrsquo button to execute the QueryPair
Points of interest
o When executing a lsquoDesign-Time Runrsquo QuerySurgetrade goes through the following phases
Loading ndash QuerySurgetrade is loading the SQL pairs onto the Agent for execution
Running ndash The Agent is running the target and source queries
Analyzing ndash QuerySurgetrade is comparing the results
o QuerySurgetrade displays the following information about the last lsquoDesign-Time Runrsquo
Source Rows ndash number of source rows returned
Target Rows ndash number of target rows returned
Row Count Difference ndash number of rows different between source and target
Failed Row Count ndash number of rows with data differences
Non-Matching Source Rows ndash number of source rows not found in the target (based on key
column(s))
Non-Matching Target Rows ndash number of target rows not found in the source (based on key
column(s))
o lsquoConnectionsrsquo and lsquoQuery Performancersquo metrics are displayed
5 Click the lsquoView Query Resultsrsquo button to bring up the results window
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
22
Points of interest
o The lsquoQueryPair Resultsrsquo window contains five tabs
Source Tab ndash displays the source result rows
Target Tab ndash displays the target result rows
Failures Tab ndash displays data failures (not populated in this example as no rows failed)
Source Query Tab ndash displays the source query
Target Query Tab ndash displays the target query
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
23
Create a Reusable Query Snippet
A query Snippet is a reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet
is to minimize the number of places you need to make changes on the same code in different SQL calls A Snippet does
not have to be a syntactically intact query (for example it might just be a WHERE clause) but there is no reason why it
canrsquot be a complete query (eg a reusable sub-query) This feature lets you develop libraries of lsquoReusable Query
Snippetsrsquo to be reused in multiple queries If a Snippet shared by multiple queries needs to change you can make the
change once and all of the queries using the Snippet are changed automatically
To create a lsquoReusable Query Snippetrsquo
1 Click the lsquoReusable Query Snippetsrsquo folder in the lsquoDesign Libraryrsquo
2 Click the lsquoCreate New Reusable Query Snippetrsquo button
3 Enter ldquoMy Test Snippetrdquo in the lsquoReusable Query Snippet Namersquo field and enter ldquoMy first reusable query snippetrdquo
in the lsquoDescriptionrsquo field
4 Click the lsquoSaversquo button on the lsquoCreate New Reusable Query Snippetrsquo dialog
5 Enter your SQL in the lsquoReusable Query Snippetrsquo text lsquoEditorrsquo (copypaste will work)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
24
Points of interest
o A lsquoReusable Query Snippetrsquo has the following tabs
Reusable Query ndash where the SQL resides
Properties ndash for additional descriptive information and metadata
History ndash shows the history of changes made to the Snippet
Appearances ndash shows which QueryPairs contain the Snippet
6 Click the lsquoSaversquo button to save your lsquoReusable Query Snippetrsquo
7 The newly created lsquoReusable Query Snippetrsquo is added to the lsquoDesign Libraryrsquo and is now available for use
Adding a lsquoReusable Query Snippetrsquo to a QueryPair
1 Open the ldquoMy Test QueryPairrdquo previously created
2 Place your cursor within the existing SQL query where you would like to add the Snippet
3 Click the lsquoAdd Reusable Query Snippetrsquo button
4 Click the lsquoReusable Query Snippetsrsquo folder on the left panel
5 Select lsquoMy Test Snippetrsquo in the top right panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
25
Points of interest
o The left panel utilizes a folder structure similar to Microsoft Windows Explorer (your Snippet is saved
in the root folder but can be grouped by subfolders manually)
o The top right pane displays the lsquoReusable Query Snippetsrsquo including the one you created earlier
o The bottom right panel displays the SQL of the selected Snippet
6 Click the lsquoOKrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
12
QuerySurgetrade
QuickStart Guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
13
Login to QuerySurgetrade
Upon QuerySurgetrade installation one Administrative user is created for you to get started
1 On the installation machine click the lsquoStartrsquo button
2 In the lsquoStartrsquo menu select All Programs QuerySurgetrade Launch QuerySurgetrade
3 QuerySurgetrade will launch in your default browser
4 Enter Username ldquoadminrdquo and password ldquoadminrdquo and click the lsquoLoginrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
14
Create a QueryPair test from scratch
A QueryPair is what QuerySurgetrade refers to as a pair of queries that have the following characteristics
o One SQL query that retrieves data from a source file or database and o Another SQL query that retrieves data from a target big data store data warehouse data mart or database
These two queries together comprise a QueryPair
1 Click the lsquoQueryPairsrsquo folder in the lsquoDesign Libraryrsquo panel
2 Click the lsquoCreate New QueryPairrsquo button
3 Enter ldquoMy Test QueryPairrdquo in the lsquoQueryPair Namersquo field and enter ldquoMy first QueryPairrdquo in the lsquoDescriptionrsquo field
Points of interest
o The lsquoCreate a New QueryPairrsquo dialog contains
QueryPair Name field ndash a name for your QueryPair
Description field ndash a description for your QueryPair
Mapping field ndash for reference back to a mapping document if applicable (Data mapping is a
process used in data warehousing by which different data models are linked to each other
Mappings are typically used for transformations in the ETL process or for consolidation of
multiple databases and or redundant columns )
4 Click the lsquoSaversquo button on the lsquoCreate New QueryPairrsquo dialog and the new QueryPair tab will open
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
15
Points of interest
o The lsquoQueryPairrsquo tab contains
lsquoSourcersquo and lsquoConnectionrsquo ndash for storing the source query with a connection
lsquoTargetrsquo and lsquoConnectionrsquo ndash for storing the target query with a connection
lsquoSaversquo icons ndash for saving the source or target query
5 Enter your SQL in the lsquoSourcersquo query text lsquoEditorrsquo (copypaste will work)
6 Select your source DB from the source lsquoConnectionrsquo drop-down
7 Enter your SQL in the lsquoTargetrsquo query text lsquoEditorrsquo (copypaste will work)
8 Select your target DB from the target lsquoConnectionrsquo drop-down
Points of interest
o In the screenshot above lsquocountryNamersquo is the column name in the source COUNTRYISO table
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
16
o In the screenshot above lsquocountryNamersquo is the column name in the target lsquoCountryrsquo table (same name in
both source and target)
o For demonstration purposes both columns were aliased to lsquoCountryrsquo QuerySurgetrade does not require
both source and target columns to be named the same (although this is a best practice) however the
columns need to be in the same logical order between source and target
9 Click the lsquoSaversquo icon on both the source and target queries
For more information on QueryPairs please visit Design LibraryQueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
17
Review of QuerySurgetrade Agent and Agent Status
QuerySurgetrade Agents perform the actual query tasks Agents execute queries against source and target data stores and return the results to QuerySurgetrade When you install a QuerySurgetrade Agent the installer will ask you for the URL of your QuerySurgetrade installation The installer will then install and start the Agent When the Agent starts it will check its registration status with QuerySurgetrade and it will auto-register if necessary
1 Agent status can be determined visually via the Agent icon in the bottom right of the GUI
Points of interest
o Agent icon appears red on bottom when busy
o Agent icon appears yellow on bottom when idle
o Agent icon appears gray on bottom when offline
o Mouse-over the Agent icon to reveal the status of all Agents
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
18
2 Click the Agent icon to open an lsquoAgent Activityrsquo window
Points of interest
o The lsquoAgent Activityrsquo window contains
Hostname ndash the names of all Agents that have been added
Status ndash Agents can be Idle Offline or Running a Scenario
Last Ping ndash date and time the Agent last communicated with QuerySurgetrade Active Agents
display a checked green symbol inactive Agents display an Xrsquod red symbol
Additional points
o You may install multiple QuerySurgetrade Agents up to the number that your license permits
o Each QuerySurgetrade Agent deployed in your environment needs at least one JDBC driver to work with
your data sources A JDBC driver is a piece of software that allows your Agent to talk to a data source
So for example if you plan to use QuerySurgetrade with Oracle and Teradata you will need to install both
the Oracle and the Teradata drivers with each Agent
o The QuerySurgetrade Installer comes bundled with JDBC drivers for several industry-standard databases
and you can install these drivers when you install the Agent
o You can always add new drivers using the installer after you have installed an Agent
o Your JDBC driver product may not be bundled with QuerySurgetrade if not you will have to deploy the
JDBC driver(s) manually to the Agent machine For more information see Adding JDBC Drivers
o QuerySurgetrade Agent installs as a service by default
For more information on Agents please visit AdministrationAgents in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
19
Design-Time Run execution of an existing QueryPair test
The lsquoDesign-Time Runrsquo tab displays detailed results for each QueryPair This tab allows you to execute a QueryPair test
run to make sure that it behaves as you expect This is not intended for actual testing execution purposes
1 Click on the + next to the lsquoQueryPairsrsquo folder on the left to expand the folder
Points of interest
o QuerySurgetrade utilizes a folder structure similar to Microsoft Windows Explorer
o Multiple sub-folders can be contained within folders
o QueryPairs are contained within each folder
2 Double-click your QueryPair to open it
Points of interest
A QueryPair has the following tabs
o The lsquoQueryPairrsquo tab contains
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
20
lsquoSource Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoTarget Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoSaversquo icons ndash for saving the source or target query
o The lsquoPropertiesrsquo tab contains
QueryPair name description and mapping fields
Data Type Checking ndash Ability to check data types or convert all types to varchar (String)
before comparison
Row Count Options ndash to set reporting for row count differences
Key Column Definition ndash to set a column from either the source or target query as key
Row Duplicate Options ndash to set whether or not QuerySurgetrade checks for duplicate rows
o The lsquoDesign-Time Runrsquo tab contains
Detailed results for each QueryPair This tab allows you to execute a QueryPair test run to
make sure that it behaves as you expect
o The lsquoHistoryrsquo tab shows the history of changes to the QueryPair
o The lsquoDTR Historyrsquo tab shows passfail information from previous lsquoDesign-Time Runsrsquo (currently
empty as no runs have been executed yet)
3 Click the lsquoDesign-Time Runrsquo tab
Points of interest
o The lsquoDesign-Time Runrsquo tab allows you to execute a test run to make sure that the QueryPair behaves as
you expect (not for actual testing execution purposes)
o The first time clicking on the rsquoDesign-Time Runrsquo will indicate that a run has not occurred previously for a
QueryPair
o A specific Agent if desired can be selected in the drop down menu (not required )
o Once you perform a lsquoDesign-Time Runrsquo the most recent results will always display here
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
21
4 Click the lsquoRunrsquo button to execute the QueryPair
Points of interest
o When executing a lsquoDesign-Time Runrsquo QuerySurgetrade goes through the following phases
Loading ndash QuerySurgetrade is loading the SQL pairs onto the Agent for execution
Running ndash The Agent is running the target and source queries
Analyzing ndash QuerySurgetrade is comparing the results
o QuerySurgetrade displays the following information about the last lsquoDesign-Time Runrsquo
Source Rows ndash number of source rows returned
Target Rows ndash number of target rows returned
Row Count Difference ndash number of rows different between source and target
Failed Row Count ndash number of rows with data differences
Non-Matching Source Rows ndash number of source rows not found in the target (based on key
column(s))
Non-Matching Target Rows ndash number of target rows not found in the source (based on key
column(s))
o lsquoConnectionsrsquo and lsquoQuery Performancersquo metrics are displayed
5 Click the lsquoView Query Resultsrsquo button to bring up the results window
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
22
Points of interest
o The lsquoQueryPair Resultsrsquo window contains five tabs
Source Tab ndash displays the source result rows
Target Tab ndash displays the target result rows
Failures Tab ndash displays data failures (not populated in this example as no rows failed)
Source Query Tab ndash displays the source query
Target Query Tab ndash displays the target query
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
23
Create a Reusable Query Snippet
A query Snippet is a reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet
is to minimize the number of places you need to make changes on the same code in different SQL calls A Snippet does
not have to be a syntactically intact query (for example it might just be a WHERE clause) but there is no reason why it
canrsquot be a complete query (eg a reusable sub-query) This feature lets you develop libraries of lsquoReusable Query
Snippetsrsquo to be reused in multiple queries If a Snippet shared by multiple queries needs to change you can make the
change once and all of the queries using the Snippet are changed automatically
To create a lsquoReusable Query Snippetrsquo
1 Click the lsquoReusable Query Snippetsrsquo folder in the lsquoDesign Libraryrsquo
2 Click the lsquoCreate New Reusable Query Snippetrsquo button
3 Enter ldquoMy Test Snippetrdquo in the lsquoReusable Query Snippet Namersquo field and enter ldquoMy first reusable query snippetrdquo
in the lsquoDescriptionrsquo field
4 Click the lsquoSaversquo button on the lsquoCreate New Reusable Query Snippetrsquo dialog
5 Enter your SQL in the lsquoReusable Query Snippetrsquo text lsquoEditorrsquo (copypaste will work)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
24
Points of interest
o A lsquoReusable Query Snippetrsquo has the following tabs
Reusable Query ndash where the SQL resides
Properties ndash for additional descriptive information and metadata
History ndash shows the history of changes made to the Snippet
Appearances ndash shows which QueryPairs contain the Snippet
6 Click the lsquoSaversquo button to save your lsquoReusable Query Snippetrsquo
7 The newly created lsquoReusable Query Snippetrsquo is added to the lsquoDesign Libraryrsquo and is now available for use
Adding a lsquoReusable Query Snippetrsquo to a QueryPair
1 Open the ldquoMy Test QueryPairrdquo previously created
2 Place your cursor within the existing SQL query where you would like to add the Snippet
3 Click the lsquoAdd Reusable Query Snippetrsquo button
4 Click the lsquoReusable Query Snippetsrsquo folder on the left panel
5 Select lsquoMy Test Snippetrsquo in the top right panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
25
Points of interest
o The left panel utilizes a folder structure similar to Microsoft Windows Explorer (your Snippet is saved
in the root folder but can be grouped by subfolders manually)
o The top right pane displays the lsquoReusable Query Snippetsrsquo including the one you created earlier
o The bottom right panel displays the SQL of the selected Snippet
6 Click the lsquoOKrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
13
Login to QuerySurgetrade
Upon QuerySurgetrade installation one Administrative user is created for you to get started
1 On the installation machine click the lsquoStartrsquo button
2 In the lsquoStartrsquo menu select All Programs QuerySurgetrade Launch QuerySurgetrade
3 QuerySurgetrade will launch in your default browser
4 Enter Username ldquoadminrdquo and password ldquoadminrdquo and click the lsquoLoginrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
14
Create a QueryPair test from scratch
A QueryPair is what QuerySurgetrade refers to as a pair of queries that have the following characteristics
o One SQL query that retrieves data from a source file or database and o Another SQL query that retrieves data from a target big data store data warehouse data mart or database
These two queries together comprise a QueryPair
1 Click the lsquoQueryPairsrsquo folder in the lsquoDesign Libraryrsquo panel
2 Click the lsquoCreate New QueryPairrsquo button
3 Enter ldquoMy Test QueryPairrdquo in the lsquoQueryPair Namersquo field and enter ldquoMy first QueryPairrdquo in the lsquoDescriptionrsquo field
Points of interest
o The lsquoCreate a New QueryPairrsquo dialog contains
QueryPair Name field ndash a name for your QueryPair
Description field ndash a description for your QueryPair
Mapping field ndash for reference back to a mapping document if applicable (Data mapping is a
process used in data warehousing by which different data models are linked to each other
Mappings are typically used for transformations in the ETL process or for consolidation of
multiple databases and or redundant columns )
4 Click the lsquoSaversquo button on the lsquoCreate New QueryPairrsquo dialog and the new QueryPair tab will open
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
15
Points of interest
o The lsquoQueryPairrsquo tab contains
lsquoSourcersquo and lsquoConnectionrsquo ndash for storing the source query with a connection
lsquoTargetrsquo and lsquoConnectionrsquo ndash for storing the target query with a connection
lsquoSaversquo icons ndash for saving the source or target query
5 Enter your SQL in the lsquoSourcersquo query text lsquoEditorrsquo (copypaste will work)
6 Select your source DB from the source lsquoConnectionrsquo drop-down
7 Enter your SQL in the lsquoTargetrsquo query text lsquoEditorrsquo (copypaste will work)
8 Select your target DB from the target lsquoConnectionrsquo drop-down
Points of interest
o In the screenshot above lsquocountryNamersquo is the column name in the source COUNTRYISO table
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
16
o In the screenshot above lsquocountryNamersquo is the column name in the target lsquoCountryrsquo table (same name in
both source and target)
o For demonstration purposes both columns were aliased to lsquoCountryrsquo QuerySurgetrade does not require
both source and target columns to be named the same (although this is a best practice) however the
columns need to be in the same logical order between source and target
9 Click the lsquoSaversquo icon on both the source and target queries
For more information on QueryPairs please visit Design LibraryQueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
17
Review of QuerySurgetrade Agent and Agent Status
QuerySurgetrade Agents perform the actual query tasks Agents execute queries against source and target data stores and return the results to QuerySurgetrade When you install a QuerySurgetrade Agent the installer will ask you for the URL of your QuerySurgetrade installation The installer will then install and start the Agent When the Agent starts it will check its registration status with QuerySurgetrade and it will auto-register if necessary
1 Agent status can be determined visually via the Agent icon in the bottom right of the GUI
Points of interest
o Agent icon appears red on bottom when busy
o Agent icon appears yellow on bottom when idle
o Agent icon appears gray on bottom when offline
o Mouse-over the Agent icon to reveal the status of all Agents
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
18
2 Click the Agent icon to open an lsquoAgent Activityrsquo window
Points of interest
o The lsquoAgent Activityrsquo window contains
Hostname ndash the names of all Agents that have been added
Status ndash Agents can be Idle Offline or Running a Scenario
Last Ping ndash date and time the Agent last communicated with QuerySurgetrade Active Agents
display a checked green symbol inactive Agents display an Xrsquod red symbol
Additional points
o You may install multiple QuerySurgetrade Agents up to the number that your license permits
o Each QuerySurgetrade Agent deployed in your environment needs at least one JDBC driver to work with
your data sources A JDBC driver is a piece of software that allows your Agent to talk to a data source
So for example if you plan to use QuerySurgetrade with Oracle and Teradata you will need to install both
the Oracle and the Teradata drivers with each Agent
o The QuerySurgetrade Installer comes bundled with JDBC drivers for several industry-standard databases
and you can install these drivers when you install the Agent
o You can always add new drivers using the installer after you have installed an Agent
o Your JDBC driver product may not be bundled with QuerySurgetrade if not you will have to deploy the
JDBC driver(s) manually to the Agent machine For more information see Adding JDBC Drivers
o QuerySurgetrade Agent installs as a service by default
For more information on Agents please visit AdministrationAgents in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
19
Design-Time Run execution of an existing QueryPair test
The lsquoDesign-Time Runrsquo tab displays detailed results for each QueryPair This tab allows you to execute a QueryPair test
run to make sure that it behaves as you expect This is not intended for actual testing execution purposes
1 Click on the + next to the lsquoQueryPairsrsquo folder on the left to expand the folder
Points of interest
o QuerySurgetrade utilizes a folder structure similar to Microsoft Windows Explorer
o Multiple sub-folders can be contained within folders
o QueryPairs are contained within each folder
2 Double-click your QueryPair to open it
Points of interest
A QueryPair has the following tabs
o The lsquoQueryPairrsquo tab contains
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
20
lsquoSource Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoTarget Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoSaversquo icons ndash for saving the source or target query
o The lsquoPropertiesrsquo tab contains
QueryPair name description and mapping fields
Data Type Checking ndash Ability to check data types or convert all types to varchar (String)
before comparison
Row Count Options ndash to set reporting for row count differences
Key Column Definition ndash to set a column from either the source or target query as key
Row Duplicate Options ndash to set whether or not QuerySurgetrade checks for duplicate rows
o The lsquoDesign-Time Runrsquo tab contains
Detailed results for each QueryPair This tab allows you to execute a QueryPair test run to
make sure that it behaves as you expect
o The lsquoHistoryrsquo tab shows the history of changes to the QueryPair
o The lsquoDTR Historyrsquo tab shows passfail information from previous lsquoDesign-Time Runsrsquo (currently
empty as no runs have been executed yet)
3 Click the lsquoDesign-Time Runrsquo tab
Points of interest
o The lsquoDesign-Time Runrsquo tab allows you to execute a test run to make sure that the QueryPair behaves as
you expect (not for actual testing execution purposes)
o The first time clicking on the rsquoDesign-Time Runrsquo will indicate that a run has not occurred previously for a
QueryPair
o A specific Agent if desired can be selected in the drop down menu (not required )
o Once you perform a lsquoDesign-Time Runrsquo the most recent results will always display here
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
21
4 Click the lsquoRunrsquo button to execute the QueryPair
Points of interest
o When executing a lsquoDesign-Time Runrsquo QuerySurgetrade goes through the following phases
Loading ndash QuerySurgetrade is loading the SQL pairs onto the Agent for execution
Running ndash The Agent is running the target and source queries
Analyzing ndash QuerySurgetrade is comparing the results
o QuerySurgetrade displays the following information about the last lsquoDesign-Time Runrsquo
Source Rows ndash number of source rows returned
Target Rows ndash number of target rows returned
Row Count Difference ndash number of rows different between source and target
Failed Row Count ndash number of rows with data differences
Non-Matching Source Rows ndash number of source rows not found in the target (based on key
column(s))
Non-Matching Target Rows ndash number of target rows not found in the source (based on key
column(s))
o lsquoConnectionsrsquo and lsquoQuery Performancersquo metrics are displayed
5 Click the lsquoView Query Resultsrsquo button to bring up the results window
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
22
Points of interest
o The lsquoQueryPair Resultsrsquo window contains five tabs
Source Tab ndash displays the source result rows
Target Tab ndash displays the target result rows
Failures Tab ndash displays data failures (not populated in this example as no rows failed)
Source Query Tab ndash displays the source query
Target Query Tab ndash displays the target query
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
23
Create a Reusable Query Snippet
A query Snippet is a reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet
is to minimize the number of places you need to make changes on the same code in different SQL calls A Snippet does
not have to be a syntactically intact query (for example it might just be a WHERE clause) but there is no reason why it
canrsquot be a complete query (eg a reusable sub-query) This feature lets you develop libraries of lsquoReusable Query
Snippetsrsquo to be reused in multiple queries If a Snippet shared by multiple queries needs to change you can make the
change once and all of the queries using the Snippet are changed automatically
To create a lsquoReusable Query Snippetrsquo
1 Click the lsquoReusable Query Snippetsrsquo folder in the lsquoDesign Libraryrsquo
2 Click the lsquoCreate New Reusable Query Snippetrsquo button
3 Enter ldquoMy Test Snippetrdquo in the lsquoReusable Query Snippet Namersquo field and enter ldquoMy first reusable query snippetrdquo
in the lsquoDescriptionrsquo field
4 Click the lsquoSaversquo button on the lsquoCreate New Reusable Query Snippetrsquo dialog
5 Enter your SQL in the lsquoReusable Query Snippetrsquo text lsquoEditorrsquo (copypaste will work)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
24
Points of interest
o A lsquoReusable Query Snippetrsquo has the following tabs
Reusable Query ndash where the SQL resides
Properties ndash for additional descriptive information and metadata
History ndash shows the history of changes made to the Snippet
Appearances ndash shows which QueryPairs contain the Snippet
6 Click the lsquoSaversquo button to save your lsquoReusable Query Snippetrsquo
7 The newly created lsquoReusable Query Snippetrsquo is added to the lsquoDesign Libraryrsquo and is now available for use
Adding a lsquoReusable Query Snippetrsquo to a QueryPair
1 Open the ldquoMy Test QueryPairrdquo previously created
2 Place your cursor within the existing SQL query where you would like to add the Snippet
3 Click the lsquoAdd Reusable Query Snippetrsquo button
4 Click the lsquoReusable Query Snippetsrsquo folder on the left panel
5 Select lsquoMy Test Snippetrsquo in the top right panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
25
Points of interest
o The left panel utilizes a folder structure similar to Microsoft Windows Explorer (your Snippet is saved
in the root folder but can be grouped by subfolders manually)
o The top right pane displays the lsquoReusable Query Snippetsrsquo including the one you created earlier
o The bottom right panel displays the SQL of the selected Snippet
6 Click the lsquoOKrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
14
Create a QueryPair test from scratch
A QueryPair is what QuerySurgetrade refers to as a pair of queries that have the following characteristics
o One SQL query that retrieves data from a source file or database and o Another SQL query that retrieves data from a target big data store data warehouse data mart or database
These two queries together comprise a QueryPair
1 Click the lsquoQueryPairsrsquo folder in the lsquoDesign Libraryrsquo panel
2 Click the lsquoCreate New QueryPairrsquo button
3 Enter ldquoMy Test QueryPairrdquo in the lsquoQueryPair Namersquo field and enter ldquoMy first QueryPairrdquo in the lsquoDescriptionrsquo field
Points of interest
o The lsquoCreate a New QueryPairrsquo dialog contains
QueryPair Name field ndash a name for your QueryPair
Description field ndash a description for your QueryPair
Mapping field ndash for reference back to a mapping document if applicable (Data mapping is a
process used in data warehousing by which different data models are linked to each other
Mappings are typically used for transformations in the ETL process or for consolidation of
multiple databases and or redundant columns )
4 Click the lsquoSaversquo button on the lsquoCreate New QueryPairrsquo dialog and the new QueryPair tab will open
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
15
Points of interest
o The lsquoQueryPairrsquo tab contains
lsquoSourcersquo and lsquoConnectionrsquo ndash for storing the source query with a connection
lsquoTargetrsquo and lsquoConnectionrsquo ndash for storing the target query with a connection
lsquoSaversquo icons ndash for saving the source or target query
5 Enter your SQL in the lsquoSourcersquo query text lsquoEditorrsquo (copypaste will work)
6 Select your source DB from the source lsquoConnectionrsquo drop-down
7 Enter your SQL in the lsquoTargetrsquo query text lsquoEditorrsquo (copypaste will work)
8 Select your target DB from the target lsquoConnectionrsquo drop-down
Points of interest
o In the screenshot above lsquocountryNamersquo is the column name in the source COUNTRYISO table
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
16
o In the screenshot above lsquocountryNamersquo is the column name in the target lsquoCountryrsquo table (same name in
both source and target)
o For demonstration purposes both columns were aliased to lsquoCountryrsquo QuerySurgetrade does not require
both source and target columns to be named the same (although this is a best practice) however the
columns need to be in the same logical order between source and target
9 Click the lsquoSaversquo icon on both the source and target queries
For more information on QueryPairs please visit Design LibraryQueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
17
Review of QuerySurgetrade Agent and Agent Status
QuerySurgetrade Agents perform the actual query tasks Agents execute queries against source and target data stores and return the results to QuerySurgetrade When you install a QuerySurgetrade Agent the installer will ask you for the URL of your QuerySurgetrade installation The installer will then install and start the Agent When the Agent starts it will check its registration status with QuerySurgetrade and it will auto-register if necessary
1 Agent status can be determined visually via the Agent icon in the bottom right of the GUI
Points of interest
o Agent icon appears red on bottom when busy
o Agent icon appears yellow on bottom when idle
o Agent icon appears gray on bottom when offline
o Mouse-over the Agent icon to reveal the status of all Agents
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
18
2 Click the Agent icon to open an lsquoAgent Activityrsquo window
Points of interest
o The lsquoAgent Activityrsquo window contains
Hostname ndash the names of all Agents that have been added
Status ndash Agents can be Idle Offline or Running a Scenario
Last Ping ndash date and time the Agent last communicated with QuerySurgetrade Active Agents
display a checked green symbol inactive Agents display an Xrsquod red symbol
Additional points
o You may install multiple QuerySurgetrade Agents up to the number that your license permits
o Each QuerySurgetrade Agent deployed in your environment needs at least one JDBC driver to work with
your data sources A JDBC driver is a piece of software that allows your Agent to talk to a data source
So for example if you plan to use QuerySurgetrade with Oracle and Teradata you will need to install both
the Oracle and the Teradata drivers with each Agent
o The QuerySurgetrade Installer comes bundled with JDBC drivers for several industry-standard databases
and you can install these drivers when you install the Agent
o You can always add new drivers using the installer after you have installed an Agent
o Your JDBC driver product may not be bundled with QuerySurgetrade if not you will have to deploy the
JDBC driver(s) manually to the Agent machine For more information see Adding JDBC Drivers
o QuerySurgetrade Agent installs as a service by default
For more information on Agents please visit AdministrationAgents in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
19
Design-Time Run execution of an existing QueryPair test
The lsquoDesign-Time Runrsquo tab displays detailed results for each QueryPair This tab allows you to execute a QueryPair test
run to make sure that it behaves as you expect This is not intended for actual testing execution purposes
1 Click on the + next to the lsquoQueryPairsrsquo folder on the left to expand the folder
Points of interest
o QuerySurgetrade utilizes a folder structure similar to Microsoft Windows Explorer
o Multiple sub-folders can be contained within folders
o QueryPairs are contained within each folder
2 Double-click your QueryPair to open it
Points of interest
A QueryPair has the following tabs
o The lsquoQueryPairrsquo tab contains
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
20
lsquoSource Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoTarget Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoSaversquo icons ndash for saving the source or target query
o The lsquoPropertiesrsquo tab contains
QueryPair name description and mapping fields
Data Type Checking ndash Ability to check data types or convert all types to varchar (String)
before comparison
Row Count Options ndash to set reporting for row count differences
Key Column Definition ndash to set a column from either the source or target query as key
Row Duplicate Options ndash to set whether or not QuerySurgetrade checks for duplicate rows
o The lsquoDesign-Time Runrsquo tab contains
Detailed results for each QueryPair This tab allows you to execute a QueryPair test run to
make sure that it behaves as you expect
o The lsquoHistoryrsquo tab shows the history of changes to the QueryPair
o The lsquoDTR Historyrsquo tab shows passfail information from previous lsquoDesign-Time Runsrsquo (currently
empty as no runs have been executed yet)
3 Click the lsquoDesign-Time Runrsquo tab
Points of interest
o The lsquoDesign-Time Runrsquo tab allows you to execute a test run to make sure that the QueryPair behaves as
you expect (not for actual testing execution purposes)
o The first time clicking on the rsquoDesign-Time Runrsquo will indicate that a run has not occurred previously for a
QueryPair
o A specific Agent if desired can be selected in the drop down menu (not required )
o Once you perform a lsquoDesign-Time Runrsquo the most recent results will always display here
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
21
4 Click the lsquoRunrsquo button to execute the QueryPair
Points of interest
o When executing a lsquoDesign-Time Runrsquo QuerySurgetrade goes through the following phases
Loading ndash QuerySurgetrade is loading the SQL pairs onto the Agent for execution
Running ndash The Agent is running the target and source queries
Analyzing ndash QuerySurgetrade is comparing the results
o QuerySurgetrade displays the following information about the last lsquoDesign-Time Runrsquo
Source Rows ndash number of source rows returned
Target Rows ndash number of target rows returned
Row Count Difference ndash number of rows different between source and target
Failed Row Count ndash number of rows with data differences
Non-Matching Source Rows ndash number of source rows not found in the target (based on key
column(s))
Non-Matching Target Rows ndash number of target rows not found in the source (based on key
column(s))
o lsquoConnectionsrsquo and lsquoQuery Performancersquo metrics are displayed
5 Click the lsquoView Query Resultsrsquo button to bring up the results window
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
22
Points of interest
o The lsquoQueryPair Resultsrsquo window contains five tabs
Source Tab ndash displays the source result rows
Target Tab ndash displays the target result rows
Failures Tab ndash displays data failures (not populated in this example as no rows failed)
Source Query Tab ndash displays the source query
Target Query Tab ndash displays the target query
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
23
Create a Reusable Query Snippet
A query Snippet is a reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet
is to minimize the number of places you need to make changes on the same code in different SQL calls A Snippet does
not have to be a syntactically intact query (for example it might just be a WHERE clause) but there is no reason why it
canrsquot be a complete query (eg a reusable sub-query) This feature lets you develop libraries of lsquoReusable Query
Snippetsrsquo to be reused in multiple queries If a Snippet shared by multiple queries needs to change you can make the
change once and all of the queries using the Snippet are changed automatically
To create a lsquoReusable Query Snippetrsquo
1 Click the lsquoReusable Query Snippetsrsquo folder in the lsquoDesign Libraryrsquo
2 Click the lsquoCreate New Reusable Query Snippetrsquo button
3 Enter ldquoMy Test Snippetrdquo in the lsquoReusable Query Snippet Namersquo field and enter ldquoMy first reusable query snippetrdquo
in the lsquoDescriptionrsquo field
4 Click the lsquoSaversquo button on the lsquoCreate New Reusable Query Snippetrsquo dialog
5 Enter your SQL in the lsquoReusable Query Snippetrsquo text lsquoEditorrsquo (copypaste will work)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
24
Points of interest
o A lsquoReusable Query Snippetrsquo has the following tabs
Reusable Query ndash where the SQL resides
Properties ndash for additional descriptive information and metadata
History ndash shows the history of changes made to the Snippet
Appearances ndash shows which QueryPairs contain the Snippet
6 Click the lsquoSaversquo button to save your lsquoReusable Query Snippetrsquo
7 The newly created lsquoReusable Query Snippetrsquo is added to the lsquoDesign Libraryrsquo and is now available for use
Adding a lsquoReusable Query Snippetrsquo to a QueryPair
1 Open the ldquoMy Test QueryPairrdquo previously created
2 Place your cursor within the existing SQL query where you would like to add the Snippet
3 Click the lsquoAdd Reusable Query Snippetrsquo button
4 Click the lsquoReusable Query Snippetsrsquo folder on the left panel
5 Select lsquoMy Test Snippetrsquo in the top right panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
25
Points of interest
o The left panel utilizes a folder structure similar to Microsoft Windows Explorer (your Snippet is saved
in the root folder but can be grouped by subfolders manually)
o The top right pane displays the lsquoReusable Query Snippetsrsquo including the one you created earlier
o The bottom right panel displays the SQL of the selected Snippet
6 Click the lsquoOKrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
15
Points of interest
o The lsquoQueryPairrsquo tab contains
lsquoSourcersquo and lsquoConnectionrsquo ndash for storing the source query with a connection
lsquoTargetrsquo and lsquoConnectionrsquo ndash for storing the target query with a connection
lsquoSaversquo icons ndash for saving the source or target query
5 Enter your SQL in the lsquoSourcersquo query text lsquoEditorrsquo (copypaste will work)
6 Select your source DB from the source lsquoConnectionrsquo drop-down
7 Enter your SQL in the lsquoTargetrsquo query text lsquoEditorrsquo (copypaste will work)
8 Select your target DB from the target lsquoConnectionrsquo drop-down
Points of interest
o In the screenshot above lsquocountryNamersquo is the column name in the source COUNTRYISO table
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
16
o In the screenshot above lsquocountryNamersquo is the column name in the target lsquoCountryrsquo table (same name in
both source and target)
o For demonstration purposes both columns were aliased to lsquoCountryrsquo QuerySurgetrade does not require
both source and target columns to be named the same (although this is a best practice) however the
columns need to be in the same logical order between source and target
9 Click the lsquoSaversquo icon on both the source and target queries
For more information on QueryPairs please visit Design LibraryQueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
17
Review of QuerySurgetrade Agent and Agent Status
QuerySurgetrade Agents perform the actual query tasks Agents execute queries against source and target data stores and return the results to QuerySurgetrade When you install a QuerySurgetrade Agent the installer will ask you for the URL of your QuerySurgetrade installation The installer will then install and start the Agent When the Agent starts it will check its registration status with QuerySurgetrade and it will auto-register if necessary
1 Agent status can be determined visually via the Agent icon in the bottom right of the GUI
Points of interest
o Agent icon appears red on bottom when busy
o Agent icon appears yellow on bottom when idle
o Agent icon appears gray on bottom when offline
o Mouse-over the Agent icon to reveal the status of all Agents
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
18
2 Click the Agent icon to open an lsquoAgent Activityrsquo window
Points of interest
o The lsquoAgent Activityrsquo window contains
Hostname ndash the names of all Agents that have been added
Status ndash Agents can be Idle Offline or Running a Scenario
Last Ping ndash date and time the Agent last communicated with QuerySurgetrade Active Agents
display a checked green symbol inactive Agents display an Xrsquod red symbol
Additional points
o You may install multiple QuerySurgetrade Agents up to the number that your license permits
o Each QuerySurgetrade Agent deployed in your environment needs at least one JDBC driver to work with
your data sources A JDBC driver is a piece of software that allows your Agent to talk to a data source
So for example if you plan to use QuerySurgetrade with Oracle and Teradata you will need to install both
the Oracle and the Teradata drivers with each Agent
o The QuerySurgetrade Installer comes bundled with JDBC drivers for several industry-standard databases
and you can install these drivers when you install the Agent
o You can always add new drivers using the installer after you have installed an Agent
o Your JDBC driver product may not be bundled with QuerySurgetrade if not you will have to deploy the
JDBC driver(s) manually to the Agent machine For more information see Adding JDBC Drivers
o QuerySurgetrade Agent installs as a service by default
For more information on Agents please visit AdministrationAgents in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
19
Design-Time Run execution of an existing QueryPair test
The lsquoDesign-Time Runrsquo tab displays detailed results for each QueryPair This tab allows you to execute a QueryPair test
run to make sure that it behaves as you expect This is not intended for actual testing execution purposes
1 Click on the + next to the lsquoQueryPairsrsquo folder on the left to expand the folder
Points of interest
o QuerySurgetrade utilizes a folder structure similar to Microsoft Windows Explorer
o Multiple sub-folders can be contained within folders
o QueryPairs are contained within each folder
2 Double-click your QueryPair to open it
Points of interest
A QueryPair has the following tabs
o The lsquoQueryPairrsquo tab contains
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
20
lsquoSource Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoTarget Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoSaversquo icons ndash for saving the source or target query
o The lsquoPropertiesrsquo tab contains
QueryPair name description and mapping fields
Data Type Checking ndash Ability to check data types or convert all types to varchar (String)
before comparison
Row Count Options ndash to set reporting for row count differences
Key Column Definition ndash to set a column from either the source or target query as key
Row Duplicate Options ndash to set whether or not QuerySurgetrade checks for duplicate rows
o The lsquoDesign-Time Runrsquo tab contains
Detailed results for each QueryPair This tab allows you to execute a QueryPair test run to
make sure that it behaves as you expect
o The lsquoHistoryrsquo tab shows the history of changes to the QueryPair
o The lsquoDTR Historyrsquo tab shows passfail information from previous lsquoDesign-Time Runsrsquo (currently
empty as no runs have been executed yet)
3 Click the lsquoDesign-Time Runrsquo tab
Points of interest
o The lsquoDesign-Time Runrsquo tab allows you to execute a test run to make sure that the QueryPair behaves as
you expect (not for actual testing execution purposes)
o The first time clicking on the rsquoDesign-Time Runrsquo will indicate that a run has not occurred previously for a
QueryPair
o A specific Agent if desired can be selected in the drop down menu (not required )
o Once you perform a lsquoDesign-Time Runrsquo the most recent results will always display here
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
21
4 Click the lsquoRunrsquo button to execute the QueryPair
Points of interest
o When executing a lsquoDesign-Time Runrsquo QuerySurgetrade goes through the following phases
Loading ndash QuerySurgetrade is loading the SQL pairs onto the Agent for execution
Running ndash The Agent is running the target and source queries
Analyzing ndash QuerySurgetrade is comparing the results
o QuerySurgetrade displays the following information about the last lsquoDesign-Time Runrsquo
Source Rows ndash number of source rows returned
Target Rows ndash number of target rows returned
Row Count Difference ndash number of rows different between source and target
Failed Row Count ndash number of rows with data differences
Non-Matching Source Rows ndash number of source rows not found in the target (based on key
column(s))
Non-Matching Target Rows ndash number of target rows not found in the source (based on key
column(s))
o lsquoConnectionsrsquo and lsquoQuery Performancersquo metrics are displayed
5 Click the lsquoView Query Resultsrsquo button to bring up the results window
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
22
Points of interest
o The lsquoQueryPair Resultsrsquo window contains five tabs
Source Tab ndash displays the source result rows
Target Tab ndash displays the target result rows
Failures Tab ndash displays data failures (not populated in this example as no rows failed)
Source Query Tab ndash displays the source query
Target Query Tab ndash displays the target query
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
23
Create a Reusable Query Snippet
A query Snippet is a reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet
is to minimize the number of places you need to make changes on the same code in different SQL calls A Snippet does
not have to be a syntactically intact query (for example it might just be a WHERE clause) but there is no reason why it
canrsquot be a complete query (eg a reusable sub-query) This feature lets you develop libraries of lsquoReusable Query
Snippetsrsquo to be reused in multiple queries If a Snippet shared by multiple queries needs to change you can make the
change once and all of the queries using the Snippet are changed automatically
To create a lsquoReusable Query Snippetrsquo
1 Click the lsquoReusable Query Snippetsrsquo folder in the lsquoDesign Libraryrsquo
2 Click the lsquoCreate New Reusable Query Snippetrsquo button
3 Enter ldquoMy Test Snippetrdquo in the lsquoReusable Query Snippet Namersquo field and enter ldquoMy first reusable query snippetrdquo
in the lsquoDescriptionrsquo field
4 Click the lsquoSaversquo button on the lsquoCreate New Reusable Query Snippetrsquo dialog
5 Enter your SQL in the lsquoReusable Query Snippetrsquo text lsquoEditorrsquo (copypaste will work)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
24
Points of interest
o A lsquoReusable Query Snippetrsquo has the following tabs
Reusable Query ndash where the SQL resides
Properties ndash for additional descriptive information and metadata
History ndash shows the history of changes made to the Snippet
Appearances ndash shows which QueryPairs contain the Snippet
6 Click the lsquoSaversquo button to save your lsquoReusable Query Snippetrsquo
7 The newly created lsquoReusable Query Snippetrsquo is added to the lsquoDesign Libraryrsquo and is now available for use
Adding a lsquoReusable Query Snippetrsquo to a QueryPair
1 Open the ldquoMy Test QueryPairrdquo previously created
2 Place your cursor within the existing SQL query where you would like to add the Snippet
3 Click the lsquoAdd Reusable Query Snippetrsquo button
4 Click the lsquoReusable Query Snippetsrsquo folder on the left panel
5 Select lsquoMy Test Snippetrsquo in the top right panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
25
Points of interest
o The left panel utilizes a folder structure similar to Microsoft Windows Explorer (your Snippet is saved
in the root folder but can be grouped by subfolders manually)
o The top right pane displays the lsquoReusable Query Snippetsrsquo including the one you created earlier
o The bottom right panel displays the SQL of the selected Snippet
6 Click the lsquoOKrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
16
o In the screenshot above lsquocountryNamersquo is the column name in the target lsquoCountryrsquo table (same name in
both source and target)
o For demonstration purposes both columns were aliased to lsquoCountryrsquo QuerySurgetrade does not require
both source and target columns to be named the same (although this is a best practice) however the
columns need to be in the same logical order between source and target
9 Click the lsquoSaversquo icon on both the source and target queries
For more information on QueryPairs please visit Design LibraryQueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
17
Review of QuerySurgetrade Agent and Agent Status
QuerySurgetrade Agents perform the actual query tasks Agents execute queries against source and target data stores and return the results to QuerySurgetrade When you install a QuerySurgetrade Agent the installer will ask you for the URL of your QuerySurgetrade installation The installer will then install and start the Agent When the Agent starts it will check its registration status with QuerySurgetrade and it will auto-register if necessary
1 Agent status can be determined visually via the Agent icon in the bottom right of the GUI
Points of interest
o Agent icon appears red on bottom when busy
o Agent icon appears yellow on bottom when idle
o Agent icon appears gray on bottom when offline
o Mouse-over the Agent icon to reveal the status of all Agents
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
18
2 Click the Agent icon to open an lsquoAgent Activityrsquo window
Points of interest
o The lsquoAgent Activityrsquo window contains
Hostname ndash the names of all Agents that have been added
Status ndash Agents can be Idle Offline or Running a Scenario
Last Ping ndash date and time the Agent last communicated with QuerySurgetrade Active Agents
display a checked green symbol inactive Agents display an Xrsquod red symbol
Additional points
o You may install multiple QuerySurgetrade Agents up to the number that your license permits
o Each QuerySurgetrade Agent deployed in your environment needs at least one JDBC driver to work with
your data sources A JDBC driver is a piece of software that allows your Agent to talk to a data source
So for example if you plan to use QuerySurgetrade with Oracle and Teradata you will need to install both
the Oracle and the Teradata drivers with each Agent
o The QuerySurgetrade Installer comes bundled with JDBC drivers for several industry-standard databases
and you can install these drivers when you install the Agent
o You can always add new drivers using the installer after you have installed an Agent
o Your JDBC driver product may not be bundled with QuerySurgetrade if not you will have to deploy the
JDBC driver(s) manually to the Agent machine For more information see Adding JDBC Drivers
o QuerySurgetrade Agent installs as a service by default
For more information on Agents please visit AdministrationAgents in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
19
Design-Time Run execution of an existing QueryPair test
The lsquoDesign-Time Runrsquo tab displays detailed results for each QueryPair This tab allows you to execute a QueryPair test
run to make sure that it behaves as you expect This is not intended for actual testing execution purposes
1 Click on the + next to the lsquoQueryPairsrsquo folder on the left to expand the folder
Points of interest
o QuerySurgetrade utilizes a folder structure similar to Microsoft Windows Explorer
o Multiple sub-folders can be contained within folders
o QueryPairs are contained within each folder
2 Double-click your QueryPair to open it
Points of interest
A QueryPair has the following tabs
o The lsquoQueryPairrsquo tab contains
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
20
lsquoSource Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoTarget Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoSaversquo icons ndash for saving the source or target query
o The lsquoPropertiesrsquo tab contains
QueryPair name description and mapping fields
Data Type Checking ndash Ability to check data types or convert all types to varchar (String)
before comparison
Row Count Options ndash to set reporting for row count differences
Key Column Definition ndash to set a column from either the source or target query as key
Row Duplicate Options ndash to set whether or not QuerySurgetrade checks for duplicate rows
o The lsquoDesign-Time Runrsquo tab contains
Detailed results for each QueryPair This tab allows you to execute a QueryPair test run to
make sure that it behaves as you expect
o The lsquoHistoryrsquo tab shows the history of changes to the QueryPair
o The lsquoDTR Historyrsquo tab shows passfail information from previous lsquoDesign-Time Runsrsquo (currently
empty as no runs have been executed yet)
3 Click the lsquoDesign-Time Runrsquo tab
Points of interest
o The lsquoDesign-Time Runrsquo tab allows you to execute a test run to make sure that the QueryPair behaves as
you expect (not for actual testing execution purposes)
o The first time clicking on the rsquoDesign-Time Runrsquo will indicate that a run has not occurred previously for a
QueryPair
o A specific Agent if desired can be selected in the drop down menu (not required )
o Once you perform a lsquoDesign-Time Runrsquo the most recent results will always display here
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
21
4 Click the lsquoRunrsquo button to execute the QueryPair
Points of interest
o When executing a lsquoDesign-Time Runrsquo QuerySurgetrade goes through the following phases
Loading ndash QuerySurgetrade is loading the SQL pairs onto the Agent for execution
Running ndash The Agent is running the target and source queries
Analyzing ndash QuerySurgetrade is comparing the results
o QuerySurgetrade displays the following information about the last lsquoDesign-Time Runrsquo
Source Rows ndash number of source rows returned
Target Rows ndash number of target rows returned
Row Count Difference ndash number of rows different between source and target
Failed Row Count ndash number of rows with data differences
Non-Matching Source Rows ndash number of source rows not found in the target (based on key
column(s))
Non-Matching Target Rows ndash number of target rows not found in the source (based on key
column(s))
o lsquoConnectionsrsquo and lsquoQuery Performancersquo metrics are displayed
5 Click the lsquoView Query Resultsrsquo button to bring up the results window
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
22
Points of interest
o The lsquoQueryPair Resultsrsquo window contains five tabs
Source Tab ndash displays the source result rows
Target Tab ndash displays the target result rows
Failures Tab ndash displays data failures (not populated in this example as no rows failed)
Source Query Tab ndash displays the source query
Target Query Tab ndash displays the target query
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
23
Create a Reusable Query Snippet
A query Snippet is a reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet
is to minimize the number of places you need to make changes on the same code in different SQL calls A Snippet does
not have to be a syntactically intact query (for example it might just be a WHERE clause) but there is no reason why it
canrsquot be a complete query (eg a reusable sub-query) This feature lets you develop libraries of lsquoReusable Query
Snippetsrsquo to be reused in multiple queries If a Snippet shared by multiple queries needs to change you can make the
change once and all of the queries using the Snippet are changed automatically
To create a lsquoReusable Query Snippetrsquo
1 Click the lsquoReusable Query Snippetsrsquo folder in the lsquoDesign Libraryrsquo
2 Click the lsquoCreate New Reusable Query Snippetrsquo button
3 Enter ldquoMy Test Snippetrdquo in the lsquoReusable Query Snippet Namersquo field and enter ldquoMy first reusable query snippetrdquo
in the lsquoDescriptionrsquo field
4 Click the lsquoSaversquo button on the lsquoCreate New Reusable Query Snippetrsquo dialog
5 Enter your SQL in the lsquoReusable Query Snippetrsquo text lsquoEditorrsquo (copypaste will work)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
24
Points of interest
o A lsquoReusable Query Snippetrsquo has the following tabs
Reusable Query ndash where the SQL resides
Properties ndash for additional descriptive information and metadata
History ndash shows the history of changes made to the Snippet
Appearances ndash shows which QueryPairs contain the Snippet
6 Click the lsquoSaversquo button to save your lsquoReusable Query Snippetrsquo
7 The newly created lsquoReusable Query Snippetrsquo is added to the lsquoDesign Libraryrsquo and is now available for use
Adding a lsquoReusable Query Snippetrsquo to a QueryPair
1 Open the ldquoMy Test QueryPairrdquo previously created
2 Place your cursor within the existing SQL query where you would like to add the Snippet
3 Click the lsquoAdd Reusable Query Snippetrsquo button
4 Click the lsquoReusable Query Snippetsrsquo folder on the left panel
5 Select lsquoMy Test Snippetrsquo in the top right panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
25
Points of interest
o The left panel utilizes a folder structure similar to Microsoft Windows Explorer (your Snippet is saved
in the root folder but can be grouped by subfolders manually)
o The top right pane displays the lsquoReusable Query Snippetsrsquo including the one you created earlier
o The bottom right panel displays the SQL of the selected Snippet
6 Click the lsquoOKrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
17
Review of QuerySurgetrade Agent and Agent Status
QuerySurgetrade Agents perform the actual query tasks Agents execute queries against source and target data stores and return the results to QuerySurgetrade When you install a QuerySurgetrade Agent the installer will ask you for the URL of your QuerySurgetrade installation The installer will then install and start the Agent When the Agent starts it will check its registration status with QuerySurgetrade and it will auto-register if necessary
1 Agent status can be determined visually via the Agent icon in the bottom right of the GUI
Points of interest
o Agent icon appears red on bottom when busy
o Agent icon appears yellow on bottom when idle
o Agent icon appears gray on bottom when offline
o Mouse-over the Agent icon to reveal the status of all Agents
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
18
2 Click the Agent icon to open an lsquoAgent Activityrsquo window
Points of interest
o The lsquoAgent Activityrsquo window contains
Hostname ndash the names of all Agents that have been added
Status ndash Agents can be Idle Offline or Running a Scenario
Last Ping ndash date and time the Agent last communicated with QuerySurgetrade Active Agents
display a checked green symbol inactive Agents display an Xrsquod red symbol
Additional points
o You may install multiple QuerySurgetrade Agents up to the number that your license permits
o Each QuerySurgetrade Agent deployed in your environment needs at least one JDBC driver to work with
your data sources A JDBC driver is a piece of software that allows your Agent to talk to a data source
So for example if you plan to use QuerySurgetrade with Oracle and Teradata you will need to install both
the Oracle and the Teradata drivers with each Agent
o The QuerySurgetrade Installer comes bundled with JDBC drivers for several industry-standard databases
and you can install these drivers when you install the Agent
o You can always add new drivers using the installer after you have installed an Agent
o Your JDBC driver product may not be bundled with QuerySurgetrade if not you will have to deploy the
JDBC driver(s) manually to the Agent machine For more information see Adding JDBC Drivers
o QuerySurgetrade Agent installs as a service by default
For more information on Agents please visit AdministrationAgents in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
19
Design-Time Run execution of an existing QueryPair test
The lsquoDesign-Time Runrsquo tab displays detailed results for each QueryPair This tab allows you to execute a QueryPair test
run to make sure that it behaves as you expect This is not intended for actual testing execution purposes
1 Click on the + next to the lsquoQueryPairsrsquo folder on the left to expand the folder
Points of interest
o QuerySurgetrade utilizes a folder structure similar to Microsoft Windows Explorer
o Multiple sub-folders can be contained within folders
o QueryPairs are contained within each folder
2 Double-click your QueryPair to open it
Points of interest
A QueryPair has the following tabs
o The lsquoQueryPairrsquo tab contains
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
20
lsquoSource Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoTarget Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoSaversquo icons ndash for saving the source or target query
o The lsquoPropertiesrsquo tab contains
QueryPair name description and mapping fields
Data Type Checking ndash Ability to check data types or convert all types to varchar (String)
before comparison
Row Count Options ndash to set reporting for row count differences
Key Column Definition ndash to set a column from either the source or target query as key
Row Duplicate Options ndash to set whether or not QuerySurgetrade checks for duplicate rows
o The lsquoDesign-Time Runrsquo tab contains
Detailed results for each QueryPair This tab allows you to execute a QueryPair test run to
make sure that it behaves as you expect
o The lsquoHistoryrsquo tab shows the history of changes to the QueryPair
o The lsquoDTR Historyrsquo tab shows passfail information from previous lsquoDesign-Time Runsrsquo (currently
empty as no runs have been executed yet)
3 Click the lsquoDesign-Time Runrsquo tab
Points of interest
o The lsquoDesign-Time Runrsquo tab allows you to execute a test run to make sure that the QueryPair behaves as
you expect (not for actual testing execution purposes)
o The first time clicking on the rsquoDesign-Time Runrsquo will indicate that a run has not occurred previously for a
QueryPair
o A specific Agent if desired can be selected in the drop down menu (not required )
o Once you perform a lsquoDesign-Time Runrsquo the most recent results will always display here
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
21
4 Click the lsquoRunrsquo button to execute the QueryPair
Points of interest
o When executing a lsquoDesign-Time Runrsquo QuerySurgetrade goes through the following phases
Loading ndash QuerySurgetrade is loading the SQL pairs onto the Agent for execution
Running ndash The Agent is running the target and source queries
Analyzing ndash QuerySurgetrade is comparing the results
o QuerySurgetrade displays the following information about the last lsquoDesign-Time Runrsquo
Source Rows ndash number of source rows returned
Target Rows ndash number of target rows returned
Row Count Difference ndash number of rows different between source and target
Failed Row Count ndash number of rows with data differences
Non-Matching Source Rows ndash number of source rows not found in the target (based on key
column(s))
Non-Matching Target Rows ndash number of target rows not found in the source (based on key
column(s))
o lsquoConnectionsrsquo and lsquoQuery Performancersquo metrics are displayed
5 Click the lsquoView Query Resultsrsquo button to bring up the results window
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
22
Points of interest
o The lsquoQueryPair Resultsrsquo window contains five tabs
Source Tab ndash displays the source result rows
Target Tab ndash displays the target result rows
Failures Tab ndash displays data failures (not populated in this example as no rows failed)
Source Query Tab ndash displays the source query
Target Query Tab ndash displays the target query
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
23
Create a Reusable Query Snippet
A query Snippet is a reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet
is to minimize the number of places you need to make changes on the same code in different SQL calls A Snippet does
not have to be a syntactically intact query (for example it might just be a WHERE clause) but there is no reason why it
canrsquot be a complete query (eg a reusable sub-query) This feature lets you develop libraries of lsquoReusable Query
Snippetsrsquo to be reused in multiple queries If a Snippet shared by multiple queries needs to change you can make the
change once and all of the queries using the Snippet are changed automatically
To create a lsquoReusable Query Snippetrsquo
1 Click the lsquoReusable Query Snippetsrsquo folder in the lsquoDesign Libraryrsquo
2 Click the lsquoCreate New Reusable Query Snippetrsquo button
3 Enter ldquoMy Test Snippetrdquo in the lsquoReusable Query Snippet Namersquo field and enter ldquoMy first reusable query snippetrdquo
in the lsquoDescriptionrsquo field
4 Click the lsquoSaversquo button on the lsquoCreate New Reusable Query Snippetrsquo dialog
5 Enter your SQL in the lsquoReusable Query Snippetrsquo text lsquoEditorrsquo (copypaste will work)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
24
Points of interest
o A lsquoReusable Query Snippetrsquo has the following tabs
Reusable Query ndash where the SQL resides
Properties ndash for additional descriptive information and metadata
History ndash shows the history of changes made to the Snippet
Appearances ndash shows which QueryPairs contain the Snippet
6 Click the lsquoSaversquo button to save your lsquoReusable Query Snippetrsquo
7 The newly created lsquoReusable Query Snippetrsquo is added to the lsquoDesign Libraryrsquo and is now available for use
Adding a lsquoReusable Query Snippetrsquo to a QueryPair
1 Open the ldquoMy Test QueryPairrdquo previously created
2 Place your cursor within the existing SQL query where you would like to add the Snippet
3 Click the lsquoAdd Reusable Query Snippetrsquo button
4 Click the lsquoReusable Query Snippetsrsquo folder on the left panel
5 Select lsquoMy Test Snippetrsquo in the top right panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
25
Points of interest
o The left panel utilizes a folder structure similar to Microsoft Windows Explorer (your Snippet is saved
in the root folder but can be grouped by subfolders manually)
o The top right pane displays the lsquoReusable Query Snippetsrsquo including the one you created earlier
o The bottom right panel displays the SQL of the selected Snippet
6 Click the lsquoOKrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
18
2 Click the Agent icon to open an lsquoAgent Activityrsquo window
Points of interest
o The lsquoAgent Activityrsquo window contains
Hostname ndash the names of all Agents that have been added
Status ndash Agents can be Idle Offline or Running a Scenario
Last Ping ndash date and time the Agent last communicated with QuerySurgetrade Active Agents
display a checked green symbol inactive Agents display an Xrsquod red symbol
Additional points
o You may install multiple QuerySurgetrade Agents up to the number that your license permits
o Each QuerySurgetrade Agent deployed in your environment needs at least one JDBC driver to work with
your data sources A JDBC driver is a piece of software that allows your Agent to talk to a data source
So for example if you plan to use QuerySurgetrade with Oracle and Teradata you will need to install both
the Oracle and the Teradata drivers with each Agent
o The QuerySurgetrade Installer comes bundled with JDBC drivers for several industry-standard databases
and you can install these drivers when you install the Agent
o You can always add new drivers using the installer after you have installed an Agent
o Your JDBC driver product may not be bundled with QuerySurgetrade if not you will have to deploy the
JDBC driver(s) manually to the Agent machine For more information see Adding JDBC Drivers
o QuerySurgetrade Agent installs as a service by default
For more information on Agents please visit AdministrationAgents in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
19
Design-Time Run execution of an existing QueryPair test
The lsquoDesign-Time Runrsquo tab displays detailed results for each QueryPair This tab allows you to execute a QueryPair test
run to make sure that it behaves as you expect This is not intended for actual testing execution purposes
1 Click on the + next to the lsquoQueryPairsrsquo folder on the left to expand the folder
Points of interest
o QuerySurgetrade utilizes a folder structure similar to Microsoft Windows Explorer
o Multiple sub-folders can be contained within folders
o QueryPairs are contained within each folder
2 Double-click your QueryPair to open it
Points of interest
A QueryPair has the following tabs
o The lsquoQueryPairrsquo tab contains
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
20
lsquoSource Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoTarget Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoSaversquo icons ndash for saving the source or target query
o The lsquoPropertiesrsquo tab contains
QueryPair name description and mapping fields
Data Type Checking ndash Ability to check data types or convert all types to varchar (String)
before comparison
Row Count Options ndash to set reporting for row count differences
Key Column Definition ndash to set a column from either the source or target query as key
Row Duplicate Options ndash to set whether or not QuerySurgetrade checks for duplicate rows
o The lsquoDesign-Time Runrsquo tab contains
Detailed results for each QueryPair This tab allows you to execute a QueryPair test run to
make sure that it behaves as you expect
o The lsquoHistoryrsquo tab shows the history of changes to the QueryPair
o The lsquoDTR Historyrsquo tab shows passfail information from previous lsquoDesign-Time Runsrsquo (currently
empty as no runs have been executed yet)
3 Click the lsquoDesign-Time Runrsquo tab
Points of interest
o The lsquoDesign-Time Runrsquo tab allows you to execute a test run to make sure that the QueryPair behaves as
you expect (not for actual testing execution purposes)
o The first time clicking on the rsquoDesign-Time Runrsquo will indicate that a run has not occurred previously for a
QueryPair
o A specific Agent if desired can be selected in the drop down menu (not required )
o Once you perform a lsquoDesign-Time Runrsquo the most recent results will always display here
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
21
4 Click the lsquoRunrsquo button to execute the QueryPair
Points of interest
o When executing a lsquoDesign-Time Runrsquo QuerySurgetrade goes through the following phases
Loading ndash QuerySurgetrade is loading the SQL pairs onto the Agent for execution
Running ndash The Agent is running the target and source queries
Analyzing ndash QuerySurgetrade is comparing the results
o QuerySurgetrade displays the following information about the last lsquoDesign-Time Runrsquo
Source Rows ndash number of source rows returned
Target Rows ndash number of target rows returned
Row Count Difference ndash number of rows different between source and target
Failed Row Count ndash number of rows with data differences
Non-Matching Source Rows ndash number of source rows not found in the target (based on key
column(s))
Non-Matching Target Rows ndash number of target rows not found in the source (based on key
column(s))
o lsquoConnectionsrsquo and lsquoQuery Performancersquo metrics are displayed
5 Click the lsquoView Query Resultsrsquo button to bring up the results window
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
22
Points of interest
o The lsquoQueryPair Resultsrsquo window contains five tabs
Source Tab ndash displays the source result rows
Target Tab ndash displays the target result rows
Failures Tab ndash displays data failures (not populated in this example as no rows failed)
Source Query Tab ndash displays the source query
Target Query Tab ndash displays the target query
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
23
Create a Reusable Query Snippet
A query Snippet is a reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet
is to minimize the number of places you need to make changes on the same code in different SQL calls A Snippet does
not have to be a syntactically intact query (for example it might just be a WHERE clause) but there is no reason why it
canrsquot be a complete query (eg a reusable sub-query) This feature lets you develop libraries of lsquoReusable Query
Snippetsrsquo to be reused in multiple queries If a Snippet shared by multiple queries needs to change you can make the
change once and all of the queries using the Snippet are changed automatically
To create a lsquoReusable Query Snippetrsquo
1 Click the lsquoReusable Query Snippetsrsquo folder in the lsquoDesign Libraryrsquo
2 Click the lsquoCreate New Reusable Query Snippetrsquo button
3 Enter ldquoMy Test Snippetrdquo in the lsquoReusable Query Snippet Namersquo field and enter ldquoMy first reusable query snippetrdquo
in the lsquoDescriptionrsquo field
4 Click the lsquoSaversquo button on the lsquoCreate New Reusable Query Snippetrsquo dialog
5 Enter your SQL in the lsquoReusable Query Snippetrsquo text lsquoEditorrsquo (copypaste will work)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
24
Points of interest
o A lsquoReusable Query Snippetrsquo has the following tabs
Reusable Query ndash where the SQL resides
Properties ndash for additional descriptive information and metadata
History ndash shows the history of changes made to the Snippet
Appearances ndash shows which QueryPairs contain the Snippet
6 Click the lsquoSaversquo button to save your lsquoReusable Query Snippetrsquo
7 The newly created lsquoReusable Query Snippetrsquo is added to the lsquoDesign Libraryrsquo and is now available for use
Adding a lsquoReusable Query Snippetrsquo to a QueryPair
1 Open the ldquoMy Test QueryPairrdquo previously created
2 Place your cursor within the existing SQL query where you would like to add the Snippet
3 Click the lsquoAdd Reusable Query Snippetrsquo button
4 Click the lsquoReusable Query Snippetsrsquo folder on the left panel
5 Select lsquoMy Test Snippetrsquo in the top right panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
25
Points of interest
o The left panel utilizes a folder structure similar to Microsoft Windows Explorer (your Snippet is saved
in the root folder but can be grouped by subfolders manually)
o The top right pane displays the lsquoReusable Query Snippetsrsquo including the one you created earlier
o The bottom right panel displays the SQL of the selected Snippet
6 Click the lsquoOKrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
19
Design-Time Run execution of an existing QueryPair test
The lsquoDesign-Time Runrsquo tab displays detailed results for each QueryPair This tab allows you to execute a QueryPair test
run to make sure that it behaves as you expect This is not intended for actual testing execution purposes
1 Click on the + next to the lsquoQueryPairsrsquo folder on the left to expand the folder
Points of interest
o QuerySurgetrade utilizes a folder structure similar to Microsoft Windows Explorer
o Multiple sub-folders can be contained within folders
o QueryPairs are contained within each folder
2 Double-click your QueryPair to open it
Points of interest
A QueryPair has the following tabs
o The lsquoQueryPairrsquo tab contains
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
20
lsquoSource Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoTarget Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoSaversquo icons ndash for saving the source or target query
o The lsquoPropertiesrsquo tab contains
QueryPair name description and mapping fields
Data Type Checking ndash Ability to check data types or convert all types to varchar (String)
before comparison
Row Count Options ndash to set reporting for row count differences
Key Column Definition ndash to set a column from either the source or target query as key
Row Duplicate Options ndash to set whether or not QuerySurgetrade checks for duplicate rows
o The lsquoDesign-Time Runrsquo tab contains
Detailed results for each QueryPair This tab allows you to execute a QueryPair test run to
make sure that it behaves as you expect
o The lsquoHistoryrsquo tab shows the history of changes to the QueryPair
o The lsquoDTR Historyrsquo tab shows passfail information from previous lsquoDesign-Time Runsrsquo (currently
empty as no runs have been executed yet)
3 Click the lsquoDesign-Time Runrsquo tab
Points of interest
o The lsquoDesign-Time Runrsquo tab allows you to execute a test run to make sure that the QueryPair behaves as
you expect (not for actual testing execution purposes)
o The first time clicking on the rsquoDesign-Time Runrsquo will indicate that a run has not occurred previously for a
QueryPair
o A specific Agent if desired can be selected in the drop down menu (not required )
o Once you perform a lsquoDesign-Time Runrsquo the most recent results will always display here
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
21
4 Click the lsquoRunrsquo button to execute the QueryPair
Points of interest
o When executing a lsquoDesign-Time Runrsquo QuerySurgetrade goes through the following phases
Loading ndash QuerySurgetrade is loading the SQL pairs onto the Agent for execution
Running ndash The Agent is running the target and source queries
Analyzing ndash QuerySurgetrade is comparing the results
o QuerySurgetrade displays the following information about the last lsquoDesign-Time Runrsquo
Source Rows ndash number of source rows returned
Target Rows ndash number of target rows returned
Row Count Difference ndash number of rows different between source and target
Failed Row Count ndash number of rows with data differences
Non-Matching Source Rows ndash number of source rows not found in the target (based on key
column(s))
Non-Matching Target Rows ndash number of target rows not found in the source (based on key
column(s))
o lsquoConnectionsrsquo and lsquoQuery Performancersquo metrics are displayed
5 Click the lsquoView Query Resultsrsquo button to bring up the results window
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
22
Points of interest
o The lsquoQueryPair Resultsrsquo window contains five tabs
Source Tab ndash displays the source result rows
Target Tab ndash displays the target result rows
Failures Tab ndash displays data failures (not populated in this example as no rows failed)
Source Query Tab ndash displays the source query
Target Query Tab ndash displays the target query
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
23
Create a Reusable Query Snippet
A query Snippet is a reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet
is to minimize the number of places you need to make changes on the same code in different SQL calls A Snippet does
not have to be a syntactically intact query (for example it might just be a WHERE clause) but there is no reason why it
canrsquot be a complete query (eg a reusable sub-query) This feature lets you develop libraries of lsquoReusable Query
Snippetsrsquo to be reused in multiple queries If a Snippet shared by multiple queries needs to change you can make the
change once and all of the queries using the Snippet are changed automatically
To create a lsquoReusable Query Snippetrsquo
1 Click the lsquoReusable Query Snippetsrsquo folder in the lsquoDesign Libraryrsquo
2 Click the lsquoCreate New Reusable Query Snippetrsquo button
3 Enter ldquoMy Test Snippetrdquo in the lsquoReusable Query Snippet Namersquo field and enter ldquoMy first reusable query snippetrdquo
in the lsquoDescriptionrsquo field
4 Click the lsquoSaversquo button on the lsquoCreate New Reusable Query Snippetrsquo dialog
5 Enter your SQL in the lsquoReusable Query Snippetrsquo text lsquoEditorrsquo (copypaste will work)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
24
Points of interest
o A lsquoReusable Query Snippetrsquo has the following tabs
Reusable Query ndash where the SQL resides
Properties ndash for additional descriptive information and metadata
History ndash shows the history of changes made to the Snippet
Appearances ndash shows which QueryPairs contain the Snippet
6 Click the lsquoSaversquo button to save your lsquoReusable Query Snippetrsquo
7 The newly created lsquoReusable Query Snippetrsquo is added to the lsquoDesign Libraryrsquo and is now available for use
Adding a lsquoReusable Query Snippetrsquo to a QueryPair
1 Open the ldquoMy Test QueryPairrdquo previously created
2 Place your cursor within the existing SQL query where you would like to add the Snippet
3 Click the lsquoAdd Reusable Query Snippetrsquo button
4 Click the lsquoReusable Query Snippetsrsquo folder on the left panel
5 Select lsquoMy Test Snippetrsquo in the top right panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
25
Points of interest
o The left panel utilizes a folder structure similar to Microsoft Windows Explorer (your Snippet is saved
in the root folder but can be grouped by subfolders manually)
o The top right pane displays the lsquoReusable Query Snippetsrsquo including the one you created earlier
o The bottom right panel displays the SQL of the selected Snippet
6 Click the lsquoOKrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
20
lsquoSource Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoTarget Queryrsquo and lsquoConnectionrsquo ndash for storing the query with a specific database connection
lsquoSaversquo icons ndash for saving the source or target query
o The lsquoPropertiesrsquo tab contains
QueryPair name description and mapping fields
Data Type Checking ndash Ability to check data types or convert all types to varchar (String)
before comparison
Row Count Options ndash to set reporting for row count differences
Key Column Definition ndash to set a column from either the source or target query as key
Row Duplicate Options ndash to set whether or not QuerySurgetrade checks for duplicate rows
o The lsquoDesign-Time Runrsquo tab contains
Detailed results for each QueryPair This tab allows you to execute a QueryPair test run to
make sure that it behaves as you expect
o The lsquoHistoryrsquo tab shows the history of changes to the QueryPair
o The lsquoDTR Historyrsquo tab shows passfail information from previous lsquoDesign-Time Runsrsquo (currently
empty as no runs have been executed yet)
3 Click the lsquoDesign-Time Runrsquo tab
Points of interest
o The lsquoDesign-Time Runrsquo tab allows you to execute a test run to make sure that the QueryPair behaves as
you expect (not for actual testing execution purposes)
o The first time clicking on the rsquoDesign-Time Runrsquo will indicate that a run has not occurred previously for a
QueryPair
o A specific Agent if desired can be selected in the drop down menu (not required )
o Once you perform a lsquoDesign-Time Runrsquo the most recent results will always display here
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
21
4 Click the lsquoRunrsquo button to execute the QueryPair
Points of interest
o When executing a lsquoDesign-Time Runrsquo QuerySurgetrade goes through the following phases
Loading ndash QuerySurgetrade is loading the SQL pairs onto the Agent for execution
Running ndash The Agent is running the target and source queries
Analyzing ndash QuerySurgetrade is comparing the results
o QuerySurgetrade displays the following information about the last lsquoDesign-Time Runrsquo
Source Rows ndash number of source rows returned
Target Rows ndash number of target rows returned
Row Count Difference ndash number of rows different between source and target
Failed Row Count ndash number of rows with data differences
Non-Matching Source Rows ndash number of source rows not found in the target (based on key
column(s))
Non-Matching Target Rows ndash number of target rows not found in the source (based on key
column(s))
o lsquoConnectionsrsquo and lsquoQuery Performancersquo metrics are displayed
5 Click the lsquoView Query Resultsrsquo button to bring up the results window
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
22
Points of interest
o The lsquoQueryPair Resultsrsquo window contains five tabs
Source Tab ndash displays the source result rows
Target Tab ndash displays the target result rows
Failures Tab ndash displays data failures (not populated in this example as no rows failed)
Source Query Tab ndash displays the source query
Target Query Tab ndash displays the target query
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
23
Create a Reusable Query Snippet
A query Snippet is a reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet
is to minimize the number of places you need to make changes on the same code in different SQL calls A Snippet does
not have to be a syntactically intact query (for example it might just be a WHERE clause) but there is no reason why it
canrsquot be a complete query (eg a reusable sub-query) This feature lets you develop libraries of lsquoReusable Query
Snippetsrsquo to be reused in multiple queries If a Snippet shared by multiple queries needs to change you can make the
change once and all of the queries using the Snippet are changed automatically
To create a lsquoReusable Query Snippetrsquo
1 Click the lsquoReusable Query Snippetsrsquo folder in the lsquoDesign Libraryrsquo
2 Click the lsquoCreate New Reusable Query Snippetrsquo button
3 Enter ldquoMy Test Snippetrdquo in the lsquoReusable Query Snippet Namersquo field and enter ldquoMy first reusable query snippetrdquo
in the lsquoDescriptionrsquo field
4 Click the lsquoSaversquo button on the lsquoCreate New Reusable Query Snippetrsquo dialog
5 Enter your SQL in the lsquoReusable Query Snippetrsquo text lsquoEditorrsquo (copypaste will work)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
24
Points of interest
o A lsquoReusable Query Snippetrsquo has the following tabs
Reusable Query ndash where the SQL resides
Properties ndash for additional descriptive information and metadata
History ndash shows the history of changes made to the Snippet
Appearances ndash shows which QueryPairs contain the Snippet
6 Click the lsquoSaversquo button to save your lsquoReusable Query Snippetrsquo
7 The newly created lsquoReusable Query Snippetrsquo is added to the lsquoDesign Libraryrsquo and is now available for use
Adding a lsquoReusable Query Snippetrsquo to a QueryPair
1 Open the ldquoMy Test QueryPairrdquo previously created
2 Place your cursor within the existing SQL query where you would like to add the Snippet
3 Click the lsquoAdd Reusable Query Snippetrsquo button
4 Click the lsquoReusable Query Snippetsrsquo folder on the left panel
5 Select lsquoMy Test Snippetrsquo in the top right panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
25
Points of interest
o The left panel utilizes a folder structure similar to Microsoft Windows Explorer (your Snippet is saved
in the root folder but can be grouped by subfolders manually)
o The top right pane displays the lsquoReusable Query Snippetsrsquo including the one you created earlier
o The bottom right panel displays the SQL of the selected Snippet
6 Click the lsquoOKrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
21
4 Click the lsquoRunrsquo button to execute the QueryPair
Points of interest
o When executing a lsquoDesign-Time Runrsquo QuerySurgetrade goes through the following phases
Loading ndash QuerySurgetrade is loading the SQL pairs onto the Agent for execution
Running ndash The Agent is running the target and source queries
Analyzing ndash QuerySurgetrade is comparing the results
o QuerySurgetrade displays the following information about the last lsquoDesign-Time Runrsquo
Source Rows ndash number of source rows returned
Target Rows ndash number of target rows returned
Row Count Difference ndash number of rows different between source and target
Failed Row Count ndash number of rows with data differences
Non-Matching Source Rows ndash number of source rows not found in the target (based on key
column(s))
Non-Matching Target Rows ndash number of target rows not found in the source (based on key
column(s))
o lsquoConnectionsrsquo and lsquoQuery Performancersquo metrics are displayed
5 Click the lsquoView Query Resultsrsquo button to bring up the results window
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
22
Points of interest
o The lsquoQueryPair Resultsrsquo window contains five tabs
Source Tab ndash displays the source result rows
Target Tab ndash displays the target result rows
Failures Tab ndash displays data failures (not populated in this example as no rows failed)
Source Query Tab ndash displays the source query
Target Query Tab ndash displays the target query
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
23
Create a Reusable Query Snippet
A query Snippet is a reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet
is to minimize the number of places you need to make changes on the same code in different SQL calls A Snippet does
not have to be a syntactically intact query (for example it might just be a WHERE clause) but there is no reason why it
canrsquot be a complete query (eg a reusable sub-query) This feature lets you develop libraries of lsquoReusable Query
Snippetsrsquo to be reused in multiple queries If a Snippet shared by multiple queries needs to change you can make the
change once and all of the queries using the Snippet are changed automatically
To create a lsquoReusable Query Snippetrsquo
1 Click the lsquoReusable Query Snippetsrsquo folder in the lsquoDesign Libraryrsquo
2 Click the lsquoCreate New Reusable Query Snippetrsquo button
3 Enter ldquoMy Test Snippetrdquo in the lsquoReusable Query Snippet Namersquo field and enter ldquoMy first reusable query snippetrdquo
in the lsquoDescriptionrsquo field
4 Click the lsquoSaversquo button on the lsquoCreate New Reusable Query Snippetrsquo dialog
5 Enter your SQL in the lsquoReusable Query Snippetrsquo text lsquoEditorrsquo (copypaste will work)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
24
Points of interest
o A lsquoReusable Query Snippetrsquo has the following tabs
Reusable Query ndash where the SQL resides
Properties ndash for additional descriptive information and metadata
History ndash shows the history of changes made to the Snippet
Appearances ndash shows which QueryPairs contain the Snippet
6 Click the lsquoSaversquo button to save your lsquoReusable Query Snippetrsquo
7 The newly created lsquoReusable Query Snippetrsquo is added to the lsquoDesign Libraryrsquo and is now available for use
Adding a lsquoReusable Query Snippetrsquo to a QueryPair
1 Open the ldquoMy Test QueryPairrdquo previously created
2 Place your cursor within the existing SQL query where you would like to add the Snippet
3 Click the lsquoAdd Reusable Query Snippetrsquo button
4 Click the lsquoReusable Query Snippetsrsquo folder on the left panel
5 Select lsquoMy Test Snippetrsquo in the top right panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
25
Points of interest
o The left panel utilizes a folder structure similar to Microsoft Windows Explorer (your Snippet is saved
in the root folder but can be grouped by subfolders manually)
o The top right pane displays the lsquoReusable Query Snippetsrsquo including the one you created earlier
o The bottom right panel displays the SQL of the selected Snippet
6 Click the lsquoOKrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
22
Points of interest
o The lsquoQueryPair Resultsrsquo window contains five tabs
Source Tab ndash displays the source result rows
Target Tab ndash displays the target result rows
Failures Tab ndash displays data failures (not populated in this example as no rows failed)
Source Query Tab ndash displays the source query
Target Query Tab ndash displays the target query
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
23
Create a Reusable Query Snippet
A query Snippet is a reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet
is to minimize the number of places you need to make changes on the same code in different SQL calls A Snippet does
not have to be a syntactically intact query (for example it might just be a WHERE clause) but there is no reason why it
canrsquot be a complete query (eg a reusable sub-query) This feature lets you develop libraries of lsquoReusable Query
Snippetsrsquo to be reused in multiple queries If a Snippet shared by multiple queries needs to change you can make the
change once and all of the queries using the Snippet are changed automatically
To create a lsquoReusable Query Snippetrsquo
1 Click the lsquoReusable Query Snippetsrsquo folder in the lsquoDesign Libraryrsquo
2 Click the lsquoCreate New Reusable Query Snippetrsquo button
3 Enter ldquoMy Test Snippetrdquo in the lsquoReusable Query Snippet Namersquo field and enter ldquoMy first reusable query snippetrdquo
in the lsquoDescriptionrsquo field
4 Click the lsquoSaversquo button on the lsquoCreate New Reusable Query Snippetrsquo dialog
5 Enter your SQL in the lsquoReusable Query Snippetrsquo text lsquoEditorrsquo (copypaste will work)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
24
Points of interest
o A lsquoReusable Query Snippetrsquo has the following tabs
Reusable Query ndash where the SQL resides
Properties ndash for additional descriptive information and metadata
History ndash shows the history of changes made to the Snippet
Appearances ndash shows which QueryPairs contain the Snippet
6 Click the lsquoSaversquo button to save your lsquoReusable Query Snippetrsquo
7 The newly created lsquoReusable Query Snippetrsquo is added to the lsquoDesign Libraryrsquo and is now available for use
Adding a lsquoReusable Query Snippetrsquo to a QueryPair
1 Open the ldquoMy Test QueryPairrdquo previously created
2 Place your cursor within the existing SQL query where you would like to add the Snippet
3 Click the lsquoAdd Reusable Query Snippetrsquo button
4 Click the lsquoReusable Query Snippetsrsquo folder on the left panel
5 Select lsquoMy Test Snippetrsquo in the top right panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
25
Points of interest
o The left panel utilizes a folder structure similar to Microsoft Windows Explorer (your Snippet is saved
in the root folder but can be grouped by subfolders manually)
o The top right pane displays the lsquoReusable Query Snippetsrsquo including the one you created earlier
o The bottom right panel displays the SQL of the selected Snippet
6 Click the lsquoOKrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
23
Create a Reusable Query Snippet
A query Snippet is a reusable piece of SQL code that can be embedded in one or many queries The purpose of a Snippet
is to minimize the number of places you need to make changes on the same code in different SQL calls A Snippet does
not have to be a syntactically intact query (for example it might just be a WHERE clause) but there is no reason why it
canrsquot be a complete query (eg a reusable sub-query) This feature lets you develop libraries of lsquoReusable Query
Snippetsrsquo to be reused in multiple queries If a Snippet shared by multiple queries needs to change you can make the
change once and all of the queries using the Snippet are changed automatically
To create a lsquoReusable Query Snippetrsquo
1 Click the lsquoReusable Query Snippetsrsquo folder in the lsquoDesign Libraryrsquo
2 Click the lsquoCreate New Reusable Query Snippetrsquo button
3 Enter ldquoMy Test Snippetrdquo in the lsquoReusable Query Snippet Namersquo field and enter ldquoMy first reusable query snippetrdquo
in the lsquoDescriptionrsquo field
4 Click the lsquoSaversquo button on the lsquoCreate New Reusable Query Snippetrsquo dialog
5 Enter your SQL in the lsquoReusable Query Snippetrsquo text lsquoEditorrsquo (copypaste will work)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
24
Points of interest
o A lsquoReusable Query Snippetrsquo has the following tabs
Reusable Query ndash where the SQL resides
Properties ndash for additional descriptive information and metadata
History ndash shows the history of changes made to the Snippet
Appearances ndash shows which QueryPairs contain the Snippet
6 Click the lsquoSaversquo button to save your lsquoReusable Query Snippetrsquo
7 The newly created lsquoReusable Query Snippetrsquo is added to the lsquoDesign Libraryrsquo and is now available for use
Adding a lsquoReusable Query Snippetrsquo to a QueryPair
1 Open the ldquoMy Test QueryPairrdquo previously created
2 Place your cursor within the existing SQL query where you would like to add the Snippet
3 Click the lsquoAdd Reusable Query Snippetrsquo button
4 Click the lsquoReusable Query Snippetsrsquo folder on the left panel
5 Select lsquoMy Test Snippetrsquo in the top right panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
25
Points of interest
o The left panel utilizes a folder structure similar to Microsoft Windows Explorer (your Snippet is saved
in the root folder but can be grouped by subfolders manually)
o The top right pane displays the lsquoReusable Query Snippetsrsquo including the one you created earlier
o The bottom right panel displays the SQL of the selected Snippet
6 Click the lsquoOKrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
24
Points of interest
o A lsquoReusable Query Snippetrsquo has the following tabs
Reusable Query ndash where the SQL resides
Properties ndash for additional descriptive information and metadata
History ndash shows the history of changes made to the Snippet
Appearances ndash shows which QueryPairs contain the Snippet
6 Click the lsquoSaversquo button to save your lsquoReusable Query Snippetrsquo
7 The newly created lsquoReusable Query Snippetrsquo is added to the lsquoDesign Libraryrsquo and is now available for use
Adding a lsquoReusable Query Snippetrsquo to a QueryPair
1 Open the ldquoMy Test QueryPairrdquo previously created
2 Place your cursor within the existing SQL query where you would like to add the Snippet
3 Click the lsquoAdd Reusable Query Snippetrsquo button
4 Click the lsquoReusable Query Snippetsrsquo folder on the left panel
5 Select lsquoMy Test Snippetrsquo in the top right panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
25
Points of interest
o The left panel utilizes a folder structure similar to Microsoft Windows Explorer (your Snippet is saved
in the root folder but can be grouped by subfolders manually)
o The top right pane displays the lsquoReusable Query Snippetsrsquo including the one you created earlier
o The bottom right panel displays the SQL of the selected Snippet
6 Click the lsquoOKrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
25
Points of interest
o The left panel utilizes a folder structure similar to Microsoft Windows Explorer (your Snippet is saved
in the root folder but can be grouped by subfolders manually)
o The top right pane displays the lsquoReusable Query Snippetsrsquo including the one you created earlier
o The bottom right panel displays the SQL of the selected Snippet
6 Click the lsquoOKrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
26
Points of interest
o QuerySurgetrade indicates a Snippet reference using the following syntax $
o The lsquoSourcersquo panel above is in the lsquoEditorrsquo view and displays the Snippet as a reference
o The lsquoTargetrsquo panel above is in the lsquoQuery Viewrsquo view and displays the Snippet resolved
For more information on Snippets please visit Design LibraryWorking with Reusable Query Snippets in
the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
27
Review of a failed QueryPair
QuerySurgetrade ensures that the data extracted from sources remains intact in the target by analyzing and pinpointing any
differences The following is an example of when ETL data differences are discovered
1 In the lsquoQueryPairrsquo view
Points of interest
o Both queries bring back three columns
o The targetrsquos third column is rounded to match the source column values
o In the properties tab the column lsquoRatersquo has been set as the key
2 In the lsquoDesign-Time Runrsquo tab (after running a QueryPair)
Points of interest
o One data error occurred
o Three additional rows showed up on the source side as compared to the target
3 After clicking the lsquoView Query Resultsrsquo button go to the lsquoFailuresrsquo tab
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
28
Points of interest
o The three lsquoDHLrsquo rows in the source were not found in the target leading to a possible ETL issue with
the shipper lsquoDHLrsquo
o Additionally in the lsquoFedexrsquo rows for column lsquoRate Per Poundrsquo the source does not match the target
when column lsquoShipping Typersquo = lsquoOvernightrsquo
o QuerySurgetrade uses the key column to flag which rows are non-matching
and which are data failures
o Failures are shown with a red background
For more information on QueryPairs please visit Design LibraryWorking with QueryPairs in the Help
guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
29
Creating a Test Suite
The Test Suites feature of QuerySurgetrade lets you organize your QueryPairs in Test Suites - collections of QueryPairs for
execution This feature allows you a different level of organization for execution purposes that is independent of your
lsquoDesign Libraryrsquo organization
1 Click the lsquoSchedulingrsquo icon located on the bottom panel
Points of interest
o Left Panel ndash this area displays all the available Test Suites that can be run
o Middle Panel ndash displays test associated with a Test Suite (currently no Test Suite is selected)
o Right Panel ndash displays the lsquoQueryPair Libraryrsquo tree
2 Click the lsquoCreate Suitersquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
30
Points of interest
o The lsquoCreate New Test Suitersquo dialog contains
Test Suite Name ndash a name for your suite
Description ndash a description for your suite
3 Enter ldquoMy Suiterdquo in the lsquoTest Suite Namersquo field and click the lsquoSaversquo button
Points of interest
o Notice the new Test Suite on the left panel is selected
o The new Test Suite is currently empty
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
31
4 Open the lsquoQueryPairsrsquo folder from the lsquoQueryPair Libraryrsquo panel on the right and drag the QueryPair lsquoMy Test
QueryPairrsquo to the lsquoMy Suitersquo panel in the middle
Points of interest
o You can also drag an entire folder into your Test Suite
o The middle panel now shows all the QueryPairs contained within the Test Suite
o You can remove a QueryPair by selecting it and clicking the red icon
o The lsquoPropertiesrsquo tab at the bottom of the center panel includes additional information and allows for
overriding of the connections designated on the QueryPair itself
5 Repeat step 4 for additional QueryPairs to be added to the Test Suite
6 Click the lsquoSaversquo button in the upper left corner of the middle panel to save your Test Suite
For more information on Test Suites please visit SchedulingWorking with Test Suites in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
32
Creating a Scheduled Execution Scenario
QuerySurgetrade Scenarios are collections of Test Suites that are scheduled for execution Scenarios can be run
immediately after creation or scheduled for a future datetime and are viewable in the lsquoRun Dashboardrsquo
1 Click the lsquoSchedule Scenariorsquo button
Points of interest
o The lsquoSchedule Scenariorsquo window contains
Scenario Name field ndash the name of the Scenario
All Dates to field ndash sets all Test Suites to run on a particular date and time
All Agents as field ndash sets all Test Suites to run on a particular Agent
A Test Suite schedule area with columns containing
Test Suite ndash Test Suites for this Scenario
Agent ndash allows you to select a particular Agent
Scheduled Date amp Time of Run ndash for selecting a specific date and time for a run
Useful for executing tests eg during non-working hours
2 Enter ldquoMy Scenariordquo into the lsquoScenario Namersquo field
3 Click the lsquoAdd Test Suitersquo button
4 In the lsquoTest Suitersquo column click the drop down list and select the lsquoMy Suitersquo Test Suite
5 Repeat Step 3 if you want to add additional Test Suites
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
33
Points of interest
o In the screenshot above the lsquoMy Suitersquo Test Suite has been added to the lsquoMy Scenariorsquo Scenario
o The Test Suite is set to run on any Agent
o The Test Suite is scheduled to run now
6 Click the lsquoSaversquo button on the lsquoSchedule Scenariorsquo window
7 Navigate to the lsquoRun Dashboardrsquo by clicking the lsquoRun Dashboardrsquo icon
8 Click on lsquoMy Scenariorsquo in the lsquoScenario Queuersquo (note it may take a few seconds for the Scenario to appear)
Points of interest
o Left Panel ndash lsquoScenario Queuersquo which includes all Scenarios including those previously run
o Upper Middle Panel ndash the currently selected Scenariorsquos Test Suites and their progress
o Upper Right Panel ndash additional information and metrics
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
34
o Lower MiddleRight Panel ndash graphs of progress
o After execution has completed review historical data by selecting a Scenario in the left panel
o Double click on any Test Suite in the upper middle panel to see your detailed data
9 Note the Scenario metrics on the far right
Points of interest
o lsquoQueryPair Metricsrsquo on the right panel contains
Queued ndash current QueryPairs waiting on an Agent
Running ndash current QueryPairs running
Passed ndash number of passed QueryPairs
Failed ndash number of failed QueryPairs
Errors ndash number of QueryPairs with SQL or connection errors
Killed ndash number of QueryPairs that were killed by cancelling the run
10 Double click a Test Suite to open the lsquoQueryPairsrsquo window
11 Select a QueryPair to view its results
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
35
Points of interest
o Lower Panel
Source tab ndash shows the rows returned by the source query
Target tab ndash shows the rows returned by the target query
Failure tab ndash shows failures resulting from the source and target comparison
o Right Panel
Source Row Count ndash displays number of source rows
Target Row Count ndash displays number of target rows
Row Count Difference ndash displays number of extra rows in source or target
Data Failures ndash displays number of data failures
12 Example of a lsquoFailurersquo tab in lower panel
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
36
Points of interest
o You can export results to Excel CSV file or an XML document using the lsquoExport torsquo drop-down menu
located below the tabs on the lower panel
For more information on Execution please visit SchedulingRunning a Test Suite in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
37
Running Reports
The lsquoReporting Modulersquo shows the formal reports offered by QuerySurgetrade Some reports have configurable options
which are found once the report type has been selected and opened Once executed reports can be saved as a PDF or
exported to Excel
1 Click the lsquoReportingrsquo icon located on the bottom panel
Points of interest
o A list of reports is shown in the lsquoReporting Centerrsquo (left panel)
2 Select the lsquoScenario Summaryrsquo report
3 Click the lsquoOpen Reportrsquo button
4 Select lsquoMy Scenariorsquo in the lsquoSelect a Scenariorsquo drop-down menu
5 Click the lsquoRun Reportrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
38
Points of interest
o In the screenshot above the lsquoScenario Statusrsquo is ERROR because it contained errors
o The lsquoTest Resultsrsquo displays the number of passed and failed QueryPairs
o Additional information is displayed in the lsquoOverviewrsquo section
For more information on Reports please visit Reporting in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
39
Query Wizard
The Query Wizard is a tool that allows you to generate QueryPairs automatically This is great for those with limited or
no SQL experience as well as for experts who are looking for a fast and easy way to create QueryPairs for data
migrations database upgrades and other database comparisons that do not have transformations The Query Wizard
can generate QueryPairs for Row Count Comparison Table-Level Comparison and Column-Level Comparison validations
A folder can be created that contains all of the QueryPairs generated These QueryPairs can also be added to a new Test
Suite so they can be easily run together
To add a QueryPair using the lsquoQuery Wizardrsquo
1 In the lsquoDesign Menursquo drop-down menu on the top toolbar select lsquoLaunch Query Wizardrsquo
2 Click the lsquoNextrsquo button on the Query Wizard welcome screen
3 Select a source DB from the lsquoSource Connectionrsquo drop-down menu
Points of interest
o Metadata such as lsquoDate Refreshedrsquo lsquoTable Countrsquo pre-populate for the selected DB
4 Select a target DB from the lsquoTarget Connectionrsquo drop-down menu and click the lsquoNextrsquo button
5 Select the lsquoRow Count Comparisonrsquo radio button in the lsquoComparison Typersquo section and click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
40
Points of interest
o Column-Level Comparison validates data points in the selected columns and allows for the addition
of Filtering (WHERE Clause) and Sorting (ORDER BY)
o Table-Level Comparison validates each data point in the source table to its corresponding data point
in the target table
o Row Count Comparison validates the number of rows In each of the selected tables
6 Select the lsquoSource Schemasrsquo and lsquoTarget Schemasrsquo from which you will be choosing the tables for comparison
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
41
Points of interest
o Schemas available for selection are retrieved from the source and target databases that you
previously selected
o One many or all schemas can be selected
o The lsquoinformation_schemarsquo is the internal schemata used by MySQL databases
7 Click the lsquoNextrsquo button
8 Drag individual source tables and drop them onto its coresponding target table scroll down in the lsquoSource
Tablesrsquo and lsquoTarget Tablesrsquo windows if needed
Points of interest
o As each individual source table is dropped onto itrsquos coresponding target table itrsquos Query Mapping
appears in the left hand column and can be renamed if desired
o Mapped tables show a line connecting the source and target tables with the selected Query
Mapping line highlighted green
o Auto generated SQL appears in the lsquoSource Queryrsquo and lsquoTarget Queryrsquo panes at the bottom of the
Query Wizard window
9 Click the lsquoNextrsquo button
10 Select the lsquoCreate a New Folderrsquo radio button in the lsquoDesign Libraryrsquo section of the Query Wizard window
11 In the lsquoParent Folderrsquo drop down menu select the lsquoQueryPairsrsquo folder
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
42
12 Enter ldquoWizardQueryPairsrdquo in the lsquoFolder Namersquo field
13 Select the lsquoYesrsquo radio button in the lsquoSchedulingrsquo section of the Query Wizard window
14 Enter ldquoWizardQueryPairsrdquo in the lsquoSuite Namersquo field
Points of interest
o The Query Wizard will automatically create the test assets
A new folder in the lsquoDesign Libraryrsquo with the name entered in the lsquoFolder Namersquo field
All QueryPair(s) for testing the tables selected
A new Test Suite in the lsquoSchedulingrsquo module with all of the generated QueryPairs
15 Click the lsquoNextrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
43
Points of interest
o A review screen appears with the details for your Query Wizard execution
16 Click the lsquoCreatersquo button
Points of interest
o A test folder named lsquoWizardQueryPairsrsquo was created in the lsquoDesign Libraryrsquo module
o A Test Suite named lsquoWizardQueryPairsrsquo was created in the lsquoSchedulingrsquo module
o Three QueryPairs were created (one for each of the source and target tables mapped)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
44
17 Click the lsquoOKrsquo button
18 Newly created folder with your QueryPairs is added to the lsquoDesign Libraryrsquo and are now available for use
Points of interest
o The name of the folder is the name entered into the lsquoFolder Namersquo field on the Query Wizard
o The name of a QueryPairs are in the following format
Validation Type source schemasource table - target schematarget table
For more information on Query Wizards please visit Design LibraryUsing the Query Wizard in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
45
Review of Data Health Dashboard
The Data Health Dashboard gives you a real-time view into your project progress at all levels from QueryPair
development to execution and results Data Widgets are configurable so you can see the slice of your project that you
want to see in the way you want to see it
1 Click the lsquoDesign Libraryrsquo icon located on the bottom panel
2 Click the lsquoWelcomersquo tab if itrsquos not already in view
Note If the available widgets panel is not displayed then click the lsquoAdd Widgetrsquo Button
Points of interest
o The lsquoWelcomersquo tab defaults to one panel containing four Widgets (center panel)
o Click the lsquoAdd Widgetrsquo button for a list of additional lsquoAvailable Widgetsrsquo (right panel)
o Panels can be configured by dragging and dropping Widgets as desired
3 Click the maximize button on the lsquoScenario Outcome Data Reliabilityrsquo Widget for a closer view
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
46
Points of interest
o PassFail Verifications of your recent Scenario Runs displayed as a bar graph by PassFail Rate
o Data Reliability per Scenario metric displayed as a blue line
o The vertical axis for the bar graph is on the left while the vertical axis for the blue line is on the right
4 Click the lsquoScenario Outcome Data Reliabilityrsquo Widget title to make it editable type ldquoTutorialrdquo at the beginning
of the existing title and hit enter
5 Turn off the lsquoTotal Verifications Passedrsquo data in the Widget by clicking on its legend
6 Zoom in on the data by clicking on the lsquoSCENARIOrsquo bar in the graph and dragging your mouse across to the lsquoZCITY
ndash CUrsquo bar Zoom occurs upon the release of the mouse button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
47
Points of interest
o Title changes are reflected above the graph and in the title bar
o lsquoTotal Verifications Passedrsquo are no longer reflected in the graph add the data back by clicking on the
greyed-out legend
o The graph is zoomed in on the two bars that were highlighted in the previous step and a lsquoReset
zoomrsquo button now appears to revert your zoom selections
o You can point many of the Widgets at specific data by clicking on the lsquoView Settingsrsquo icon
o You can have multiple panels of Widgets by clicking on the lsquoAdd Panelrsquo button
For more information on Widgets please visit Reporting Project Widgets in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
48
Automated Email Notifications
The notification feature of QuerySurgetrade allows a user to create custom email notifications that will be automatically
generated when certain criteria are met These notifications are highly customizable and can be adjusted to provide
alerts for a wide range of situations
To add an email notification
1 Navigate to the lsquoAdministrationrsquo section of QuerySurgetrade
2 In the lsquoAdministration Treersquo click on lsquoAll Notificationsrsquo in the lsquoNotificationsrsquo folder to open the tab
3 Click the lsquoAddrsquo button
4 Specify a name for the notification such as ldquoMy Scenario Failedrdquo
5 In the lsquoEventrsquo drop-down menu select lsquoScenario Endedrsquo
6 Refine the notification by adding two new criteria
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOutcomersquo
Comparison Type = lsquoEqualsrsquo
Value = lsquoFailedrsquo
Click the lsquoAdd New Criteriarsquo button
Data Field = lsquoOwnerrsquo
Comparison Type = lsquoEqualsrsquo
Value = ltyour user namegt
Points of interest
o This email notification triggers when a Scenario ends the Scenario fails and you are the owner
o The available options for lsquoEvent Criteriarsquo are determined by the lsquoEventrsquo chosen
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
49
o If there are multiple lsquoEvent Criteriarsquo specified all must be satisfied to send out the notification
o If no lsquoEvent Criteriarsquo are selected the notification will be triggered by any start or end of a Scenario
depending on the lsquoEventrsquo chosen
7 Define the lsquoEmailrsquo template that the notification will use
Add a lsquoSubjectrsquo
Add a lsquoBodyrsquo
Data fields can be added into the template using the lsquoInsert Fieldrsquo button
Points of interest
o Inserted data fields are represented in the lsquoSubjectrsquo and lsquoBodyrsquo as $field name
o Fields will be replaced with their actual values when a notification is delivered
o The HTML of the body can be edited directly allowing for example the addition of a previously
created table
8 Specify who will receive the notification Choose either or both
lsquoUsersrsquo QuerySurgetrade will use the email address from the userrsquos details to deliver the notification
lsquoRolesrsquo This action will send an email to every member assigned the lsquoRolesrsquo selected
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
50
Points of interest
o lsquoUsersrsquo and lsquoRolesrsquo are added by clicking their associated add button
o lsquoUsersrsquo andrsquo Rolesrsquo can be deleted by clicking their associated remove button
9 Click the lsquoSaversquo button
For more information on Email Notifications please visit AdministrationEmail Notifications in the Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
51
Command Line Integration
The command line interface makes it very easy to run Test Suites in QuerySurgetrade through automated batch scripts This
can be useful in many different Scenarios including the ability to schedule Test Suites to run using Windows Task
Scheduler or integrate with a continuous build system
1 Launch the command line interface by clicking on the ldquoqsclibatrdquo file This file is located in the ldquoclirdquo folder in the
installation directory chosen during setup QuerySurgetrade installation defaults to
CProgram FilesQuerySurgecliqsclibat
The following commands are available
1 qscli runTestSuiteByName ndash Runs an available Test Suite in QuerySurgetrade specified by name The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite namegt
Returns
f ltScenario idgt
2 qscli runTestSuiteById ndash Runs an available Test Suite in QuerySurgetrade specified by Test Suite id
The following arguments are required
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltTest Suite idgt
Returns
f ltScenario idgt
3 qscli getScenarioOutcome ndash Returns the outcome of a Scenario specified by Scenario id (which is
returned by either of the above commands)
The following arguments are required
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
52
a --hostname lthostname of the app servergt
b --port ltportgt
c --username ltusernamegt
d --password ltpasswordgt
e ltScenario idgt
Returns
f ltScenario outcomegt
4 qscli help ndash Prints the arguments for the specified command
a ltcommandgt
5 qscli ndash Prints the list of available commands
Note The command arguments can also be specified using their short-code values
-h = hostname
-P = port
-u = username
-p = password
Example usage
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
53
Example batch script
For more information on Command Line Integration please visit SchedulingUsing the Command Line in the
Help guide
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
54
Troubleshooting Common Issues
Below are the 5 most common issues that users see when performing a trial If you have an issue that is not listed here
feel free to contact us through our online chat the lsquoContact Usrsquo form email or by telephone
Issue Issue Summary
Issue 1 QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Issue 2 QuerySurgetrade Agent will not connect
Issue 3 Driver class not found error when testing connection
Issue 4 SQL Server with Windows Authentication error when testing
Connection
Issue 5 Data types do not match error
Issue 1
QueryPairs are not running or get stuck on lsquoLOADINGrsquo
Resolution
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
55
If a QueryPair or Scenario is not running it is most likely unable to find an available Agent A
QuerySurgetrade Agent is responsible for actually establishing contact with your connections and
executing the queries If all of your Agents are busy or unavailable your QueryPairs will not run
and will wait for an Agent to become available
To check if an Agent is available
o Hover over the lsquoAgent Statusrsquo icon in the bottom panel to see a quick view of the
Agentsrsquo status (for more info on the lsquoAgent Statusrsquo icon see the icon glossary below)
o Click on the lsquoAgent Statusrsquo icon in the bottom panel within QuerySurgetrade to bring up the
lsquoAgent Activityrsquo window
o Click on the lsquoAdministrationrsquo menu then choose lsquoView Agentsrsquo to open the Agents grid
o Agent Status Icons
Description Icons
No Agent(s) online
Agent icon appears gray
on bottom when offline
Idle Agent(s)
Agent icon appears yellow
on bottom when idle
Agent(s) Executing Scenario
or lsquoDesign-Time Runrsquo
Agent icon appears red on
bottom when busy
Issue 2
QuerySurgetrade Agent will not connect
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
56
Resolution
Launch the QuerySurgetrade Agent Service Console using the Start menu All Programs gt
QuerySurgetrade gt Open Agent Console
Click on the lsquoStop Agent Servicersquo button to stop the Agent
Verify the QuerySurgetrade Server URL is specified correctly and includes the right port
o eg lsquohttplocalhost8080rsquo
Click on the lsquoStart Agent Servicersquo button to start the Agent
o The lsquoAgent Service Statusrsquo should display lsquoStartedrsquo with the message showing
lsquoCONNECTEDrsquo below it
If the message below displays lsquoAGENT IS NOT ENABLEDrsquo as shown below you will need to
enable the Agent in the QuerySurgetrade Administration section
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
57
o To enable the Agent go to the Agents Grid in QuerySurgetrade and click on the lsquoEnabledrsquo
checkbox next to the desired Agent
Issue 3
Driver class not found error when testing connection
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
58
Resolution
This message will usually be shown if the JDBC driver is not installed or installed incorrectly See
the document below for instructions on installing drivers
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Add-JDBC-Driver-winpdf
Issue 4
SQL Server with Windows Authentication error when testing connection
Resolution
Follow the guide to deploy the authentication dll file
o httpwwwquerysurgecomSitewebresourcesconfig-docsQuerySurge-Setup-for-SQL-Svr-Win-Authpdf
Run Agent service as desired user
o Stop the Agent Service by opening QuerySurgeAgentwexe in the QuerySurgetrade Agent
install directory In the dialog use the lsquoStoprsquo button near the bottom of the dialog (You
can also access this interface from the Windows Services Control Panel)
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
59
o Click on the lsquoLog Onrsquo tab Next click on the lsquoThis accountrsquo radio button and enter a user
name that has appropriate domain permissions Use the format
lsquomydomainmyusernamersquo for the user name and then enter the account credentials
Press the lsquoApplyrsquo button
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
60
o Return to the lsquoGeneralrsquo tab and re-start the Agent Service using the lsquoStartrsquo button Press
the lsquoOKrsquo button to close the dialog
o Your Agent Service should have access to network resources
Issue 5
Data types do not match error
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
61
Resolution
If the data types of the source and target columns do not match QuerySurgetrade will return an
error This error message should display which columns are affected This is especially common
in situations where the source and target connections use different database technologies In
order to resolve this you will need to cast your columns in either your source query or target
query For more information on casting please refer to the documentation for the specific
database technologies that you are using
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
62
Things to do next
Run additional reports
Create and execute additional Scenarios
Take a look at the Help Section
View our video tutorials
Request a Proof of Concept
Contact Us
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
copy 2015 Real-Time Technology Solutions Inc 360 Lexington Ave 9th Floor bull New York NY 10017
wwwquerysurgecom bull (212) 240-9050
63
About RTTS (developers of QuerySurgetrade)
RTTS is the premier professional services organization that specializes in
providing software quality for critical business applications We offer the most
comprehensive suite of quality assurance services and weve helped 400+
organizations drive positive results from their software development projects
RTTS was founded in 1996 and has cultivated partnerships with the worlds
leading test tool vendors including IBM Microsoft and HP We are headquartered in New York NY and our satellite locations are in
Philadelphia Atlanta and Phoenix Many of our consulting and education services are also offered through the cloud so that no
matter where you are RTTS will ensure application functionality performance scalability and security for your organization For
more information please visit wwwrttswebcom
About QuerySurgeTM
RTTSrsquo team of test experts developed QuerySurgetrade (wwwQuerySurgecom) to address
the unique testing needs in the data warehousing and data migration spaces It has
been implemented on projects ranging from large data warehousing and ETL processes
to data migrations database upgrades integration testing data load testing and system
patch testing
QuerySurgetrade is the only automated software tool built specifically for ETL testing It can
verify as much as 100 of all data from source systems through the ETL process to the
target data warehouse and data marts QuerySurgetrade has increased test coverage and
reduced test cycle time for numerous Fortune 500 organizations helping them to
mitigate risk and meet business requirements For more information please visit
wwwQuerySurgecom
Click here to contact us for more information
top related