Integrating HP Quick Test Pro and Empirix Hammer



Similar documents
VHDL Test Bench Tutorial

WhatWorks in Log Management EventTracker at San Bernardino County Superior Court

Lean Kaizen Applied To Software Testing. Thomas Axen

Page 18. Using Software To Make More Money With Surveys. Visit us on the web at:

Presentations Phrases Prepositions Pairwork Student A Choose one of the sections below and read out one of the example sentences with a gap or noise

Avaya one-x Mobile User Guide for iphone

Frequently Asked Questions: Cisco Jabber 9.x for Android

SIP BASED CONFERENCING MEET-ME CONFERENCING. Conferencing Defined:

While Loops and Animations

WHAT MATTERS MOST THE BEST USE OF LIFE IS LOVE

Grade 8 English Language Arts 90 Reading and Responding, Lesson 9

Outlook Profiler 2.5 Series Instruction Manual

CAPIX Job Scheduler User Guide

Avaya one-x Mobile User Guide for iphone

Print Audit 4 Network Install Guide

ASUS WebStorage Client-based for Windows [Advanced] User Manual

A Sales Strategy to Increase Function Bookings

How To Proofread

Online Meeting Instructions for Join.me

CRS 4.x: Automatic Work and Wrap up Time Configuration Example

Telemarketing Selling Script for Mobile Websites

Girl Scout Journey FAQs Frequently Asked Questions

Windows Mobile 6.5 Classic Pocket Inventory Install and Setup in Windows Vista / 7

How to test and debug an ASP.NET application

Communication Process

Let s start with a couple of definitions! 39% great 39% could have been better

Acts 11 : 1-18 Sermon

Practice Fusion API Client Installation Guide for Windows

Planning and Implementing an Migration Project

Setting up a basic database in Access 2003

Installation Process

Windows Mobile 6.5 Classic Pocket Inventory Install and Setup in Windows 8

Ad Hoc Transfer Plug-in for Outlook Installation Guide

TRBOnet Watch. User Guide. Copyright 2011 Neocom Software, Ltd.

THE 10 MOST POWERFUL CHANGES THAT WILL INCREASE SALES IN YOUR COMPANY IMMEDIATELY!

7-1. This chapter explains how to set and use Event Log Overview Event Log Management Creating a New Event Log...

Sales - It s in your DNA. Find it, develop it and unleash your potential PROSPECTING IDENTIFYING & DEVELOPING NEW OPPORTUNITIES

Sales people who are trying to switch your phone service or put you on VoIP. Sales people who work for companies who fix billing errors.

SalesPad for Dynamics GP DataCollection Installation & Setup

The problem with waiting time

Bluetooth Installation

The role of integrated requirements management in software delivery.

PROJECTIONS SUITE. Database Setup Utility (and Prerequisites) Installation and General Instructions. v0.9 draft prepared by David Weinstein

Scheduling Automated Outlet Control Using FineSNMPSet with Sentry Switched Power Distribution Units

Group Assignment Agile Development Processes 2012

Windows Mobile 6.5 Classic Pocket Inventory Install and Setup in Windows XP

BullsEye Call Manager Quick Reference Guide

How to Get Your Prayers Answered By Dr. Roger Sapp

An Insiders Guide To Choosing An Honest, Reliable And Competent Computer Support Company

Hosted Acronis Backup Cloud. Keep your data safe with our cloud backup service, powered by Acronis

Earn Money Sharing YouTube Videos

WS_FTP Professional 12

Adopting Agile Testing

Speedpro MT5 to MT4 Trade Copier Quick Manual

16 Questions Sales Managers Must Ask

Ipswitch Client Installation Guide

Chapter 1 Introduction to Correlation

Nexgen Software Services

Thought for the Day Master Lesson

webmethods Certificate Toolkit

Using a Laptop Computer with a USB or Serial Port Adapter to Communicate With the Eagle System

Virtualized Open-Source Network Security Appliance

What Are Discovery & Action Dialogues?

VISUAL GUIDE to. RX Scripting. for Roulette Xtreme - System Designer 2.0

Lesson Description. Texas Essential Knowledge and Skills (Target standards) Skills (Prerequisite standards) National Standards (Supporting standards)

To download the script for the listening go to:

BIG TRENDS FOR SMALL BUSINESS

one Managing your PBX Administrator ACCESSING YOUR PBX ACCOUNT CHECKING ACCOUNT ACTIVITY

IVR PARTICIPANT MANUAL

Module 6.3 Client Catcher The Sequence (Already Buying Leads)

Liquid Democracy versus Direct Democracy through Initiative and Referendum: Which Is Best?

Horine, G. (2009). Absolute beginner's guide to project management (2nd ed.). Indianapolis, IN: Que Publishing.

CHAPTER 14 Understanding an App s Architecture

A Writer s Workshop: Working in the Middle from Jennifer Alex, NNWP Consultant

Main Question 1: How and where do you or your family use the Internet - whether on a computer or a cell phone? Follow up questions for INTERNET USERS

Install Pocket Inventory in a Windows Server 2003 R2 Standard Environment

Setup Instructions for Secure Hummingbird FTP

Inteset Secure Lockdown ver. 2.0

secure Agent Secure Enterprise Solutions Remote Recovery from a Data Center Outage SecureAgent Software

A This panel lists all the IVR queues you have built so far. This is where you start the creation of a IVR

Cabot Consulting Oracle Solutions. The Benefits of this Approach. Infrastructure Requirements

Microsoft IT Deploys and Manages Office 365 ProPlus

User s Guide for Polycom CX7000 Systems

TestManager Administration Guide

xxx Lesson Comprehend the writing process 2. Respond positively to the writing process

MARY WANG & OLIVER GU

IP Office Voic . 40DHB0002USAV Issue 4 (12/10/2001)

Interactive Reporting er Manual

EMA Radar for Workload Automation (WLA): Q2 2012

Dove User Guide Copyright Virgil Trasca

Enghouse Interactive. Vision 80/20 Avaya IP Office. Installation manual - Avaya IP Office. Version 3.0

Settle-to-File Credit Card Driver for 3700 POS

NODE4 SERVICE DESK SYSTEM

How to Sell Your Home FAST And For FULL PRICE!!

Being Accountable in Work and Life

Transcription:

Brett Leonard Indianapolis Workshop on Software Testing Integrating HP Quick Test Pro and Empirix Hammer Version: 1.00 Publication Date: September 26, 2008 Prepared by: Brett Leonard

About this Report and Presenter About this report This report was presented at the Indianapolis Workshop on Software Testing on September 26, 2008. The title of the workshop was Testers who write code. About the presenter Brett Leonard is the author and presenter of this report. He is a Senior QA Manager at a major financial company in the United States. He has over 17 years of experience in the financial services industry and 9 years of experience in software testing. He has a Bachelor of Science degree in Business Economics from State University of NY at Oneonta and has studied Software Engineering at the University of Cincinnati College of Applied Sciences. He currently leads a team that creates automated testing solutions for a variety of technologies such as web, mainframe, client server, database, web services, and voice response systems. His email address is cruisinqa@gmail.com. 2

Project Background and Testing Challenge Project background A company is engaged in a multi-year, multi-million dollar effort to upgrade their call center software application. The telephony functionality that sends a callers account information, authentication status, and other details to a phone representative (from the Voice Response System) is an integral component to the new software. Testing challenge from Senior Management Originally, automation of telephony was considered out of scope; however, the Senior Vice President of Technology Risk Management expressed concern due to the number of regression test cases requiring the functionality and challenged the QA Automation team to find a solution. Two possible responses to the challenge Yes, there is always a way to technologically solve a problem and there is a solution to this one. The critical question is whether the cost of implementing the solution exceeds the benefits derived. That question can be answered by further research and proof of concepts. No, it is dangerous to suggest innovative approaches to Senior Management because you can pay a political price if you don t find a solution. 3

Lesson One Take the Dive ** Lesson 1 ** Take the dive!! Take the risk and suggest new, creative, and potentially effective solutions (even to Senior Managers) but cover yourself politically by suggesting further research, proof of concept, and a cost/benefit analysis may be necessary before committing to a solution. A quote to keep in mind Anything the human mind can conceive, and believe, it can achieve Napoleon Hill Technology corollary 1 Technology solutions are restricted by the triple constraints of time, money, and scope. Technology corollary 2 Some technology solutions may not be the best to solve the problem. There is a great risk of over engineering solutions sometimes a simple solution is the best one. 4

Lesson Two Be Prepared and Use Effective Effort ** Lesson 2 ** Know your requirements and constraints, conduct your own automation research and development, form a vision using your knowledge, and intuition. Use effective effort to break through barriers. Don t listen to nay-sayers if you believe you are right, even supposed experts. Our requirements Telephony was to be invoked by Quick Test Pro. Process needed to be integrated with Quality Center. A number of interactions needed to be covered (authenticated, unauthenticated, wrong personal identification number, wrong customer ID, etc Our constraints No budget to buy additional software. Initial implementation to be done within a month. Needed to be implemented with existing resources. Development team was simultaneously working on a solution. My vision (Before investigation) Use Quick Test Pro to invoke a command line utility to kick off Call Master script on Hammer server. Call Master script simulates interaction with user. Quick Test Pro waits for user interface to indicate that call was received. Quick Test Pro proceeds with test on desktop and reports results to Quality Center. What is Effective Effort? Components of Effective Effort Tenacious engagement Working hard. Working through difficulties. Not giving up. Intense focus on data and feedback Paying close attention to information that indicates how well you are doing, thinking about what it will take to get better, what you must work on to improve. Ongoing strategy formulation based on feedback Listening to what the feedback is telling you and changing your approach accordingly by trying new ways to improve. Continued on next page 5

Lesson Two Be Prepared and Use Effective Effort, Continued Examples of Effective Effort Component Tenacious Engagement Intense focus on data and feedback Ongoing strategy formulation based on feedback Example The expert user for Call Master/Hammer tool had doubts about the possibility of invoking scripts through a command line. My intuition told me that there must be a way. After doing some research and talking to the vendor it became apparent there was a way. After installing the command line utility on my desktop, I was not able to invoke the script on the Hammer box. The feedback (error) told me there was something wrong with the network connection. The vendor told me to call a network administrator. The admin did not help but recounting the story to him gave me an idea to check the Secured Sockets Layer (SSL) service on the server after I turned it on I was able to invoke the script. The original vision assumed that a command line could invoke an existing Call Master script. After additional research it was discovered that new Hammer scripts needed to be created and Call Master could not be used. 6

Lesson Three Find Support for your Cause ** Lesson 3 ** Vendor product support representatives can be great allies but don t waste their time. How to waste a support reps time Don t read the manual before you call. Don t read other resources on the support web site. Don t read the support forums. Expect the rep to solve your problem for you. How a support rep can help Confirm your vision. Become an interested party and give you specific strategies. Assist troubleshooting issues during proof of concept phase. Provide ad hoc training How a support rep helped us Confirmed that there should be a way for us to achieve our goal (although he had not heard of anyone doing it before). Confirmed that the software (command line utility) I identified through my initial research would do the job. Provided us with additional documentation. Helped us put together an initial command line string for our proof of concept. Gave me ad hoc training on the functioning of the Hammer server software. Gave me a small piece of code to start building our interaction model with the voice response system. 7

Lesson Four Prove Yourself ** Lesson 4 ** Proofs of concepts are essential to the development of new, creative, effective (innovative) solutions. Advantages of successful Proof of Concepts People with doubts can be won over. People with little interest can become advocates and help implement the final product. Opens minds and allows the creative process to move forward. Uncovers risk involved in proposed solutions. Forces others to take your work seriously. Our proof of concept 1. Baby steps Establish communication link to Hammer server. Use command line to invoke script that calls a cell phone. 2. Integrate with QTP Create a method through which the script in step one can be invoked through Quick Test Pro. 3. Interact with voice response system Create a script on the Hammer server that forces a call and account information to be sent to a phone representative. 4. Put it together Use QTP to invoke the script that sends a request to the Hammer server to initiate the call interaction and watch the call and account information come through. 8

Lesson Five Documents Sell ** Lesson 5 ** Document your findings, create a process, and get others to help. You can t do everything yourself. You need to socialize your solution throughout your team or anyone else that can help. Good documentation will give people the information they need to become familiar with your solution. Documents don t need to be fancy. A good text readme document can be worth its weight in gold. Wikis are another good way to document new processes. The basic steps (for automation engineer) - Install HCMD application on desktop with QTP (TB_HCMD_3_0_1.exe) it will install tcl and ask you to reboot - Place batch (.bat file) in Temp directory (C:\TEMP) - Open QTP and run the CallPhone script Test process and architecture Test PC Hammer IVR QTP HCMD.Bat HVB App HCMD D Process description The following chart describes the test process. Step Action 1 QTP invokes the App and performs steps to get it into a state where it is ready to receive a phone call. 2 Call Phone action is called that invokes the HCMD.Bat file. QTP waits for action on the screen to determine if call has come through. Continued on next page 9

Lesson Five Documents Sell, Continued Process description, (continued) Step Action 3.Bat file sends command to the Hammer server to start a HVB script. 4 HVB script calls IVR and performs interaction to default to a representative. 5 HVB script gives IVR the extension of the test PC and the phone call transfers to the App. 6 QTP detects screen action and continues with test..bat file HCMD Start Script -mc HammerServerName -h HammerServerName -c 3 -n C:\Hammer\libmgr\private\hammer\scripts\survey_params.sbl -i 4#s#PhoneNumber#%1#s#TFN#%1#s#SSN#%1#s#RepExt#%1 -sa 0 exit QTP code Build command string cmdstr = "cmd /K C:/TEMP/hcmd_params.bat 18661111111 8771111111#" & " " & SSN & " " & "999" Set objshell = CreateObject ("WScript.Shell") objshell.run cmdstr, 0, False Set objshell = Nothing Sample HVB code (.sbl) 10

Appendix I HCMD Start Script Command Information about scheduling a Hammer Visual Basic test script through the HCMD command line interface. Syntax HCMD Start Script -mc mastercontroller -h server -c channels -n testname {-i nbrinputvars[#vartype1#varname1#varvalue1]... [#vartypen#varnamen#varvaluen]} [-l loop] [-ld loopdelay] [-ma maxactive] [-st staggertype] [-sv staggervalue] [-sm staggermax] [-sa scheduleaction] [-t starttime] [-d startdate] Parameter Definition -mc mastercontroller Name of the Master Controller on which to schedule the test. -h server Network name of the Hammer server whose channels the test runs on. -c channels Channel numbers the test runs on. Continued on next page 11

Appendix I, Continued Syntax, (continued) Parameter Definition -n testname Name of the.sbl HVB test file. You must include the full pathname. If the file name includes spaces, enclose it in quotation marks. -i nbrinputvars Optional. The number of script input variables. For each variable N in your script, enter its type, name, and value using the vartypen, varnamen, and varvaluen parameters. Enter a # symbol to separate the number of input variables and each set of type, name, and value parameters. For example, to specify two input variables, enter: -i 2#i#myInteger#5#s#myString#Good Morning Input variables must be declared as input variables inside the script in which they are used. If input variables do not appear for a script in which you expect them, the input variables may not be properly defined. See Using Input Variables. Continued on next page 12

Appendix I, Continued Syntax, (continued) vartypen Parameter Definition Required if -i nbrinputvars is specified. For input variable N, the variable type. Valid settings are: i - Integer s - String f - Float varnamen varvaluen Required if -i nbrinputvars is specified. For input variable N, the name of the variable. Required if -i nbrinputvars is specified. For input variable N, the value of the variable. -l loop Optional. Number of times to loop the script. If you do not specify this option, the script runs once. Specify - 1 (minus one) to loop indefinitely. -ld loopdelay -ma maxactive Optional. Time in milliseconds to pause between loops. Default = no limit. Optional. Maximum number of active connections. 0 for no limit. Default = 0. Continued on next page 13

Appendix I, Continued Syntax, (continued) -st staggertype Parameter -sv staggervalue -sm staggermax -sa scheduleaction Definition Optional. Stagger is the time to wait between the start of a test on a channel and the start of the same test on the next channel. Valid settings are: 0 - User-defined 1 - Random 2 - Automatic 3 - None (the default) Optional. If staggertype is 0, the stagger value is the stagger time in milliseconds. If staggertype is 1 or 2, the stagger value is the minimum time of stagger in seconds. The -sv staggervalue parameter is not used with staggertype 3. Optional. The maximum time of stagger in seconds. Used only with stagger type 1. Optional. Defines what action to take if a channel is busy when a test attempts to start. Used when you schedule a test to start at a future time by using the -t starttime parameter. Values are: 0 - Wait for the channel to finish what it is doing, then start the scheduled test 1 - Immediately stop what the channel is currently doing so the scheduled test can start Continued on next page 14

Appendix I, Continued Syntax, (continued) Parameter Definition -t starttime Optional. Defines the start time for a test. The default is the current time;the test starts immediately unless a different start date is defined. Format is in military time hh:mm. -d startdate Optional. Defines the start date for a test. The default is the current date;the test starts today either at the current time or the time defined by the -t starttime parameter. Format is mm/dd/yyyy. Example The following command schedules an HVB test script on a Master Controller named Hammer. The test runs on channels 1 to 10 on the server Editt. The test file is in the C:\Tests folder and is named My_Test.sbl. The test takes two input variables: the integer called myinteger set to 3, and the string called mystring set to helloworld. The test is set to loop indefinitely with a loop delay of 1500 ms. The start time for the test is 1:15 PM on January 10, 2007. If a channel is busy when the test starts, the test waits. HCMD Start Script -mc Hammer -h Editt -c 1-10 -n c:\tests\my_test.sbl -i 2#i#myInteger#3#s#myString#helloWorld -l -1 -ld 1500 -sa 0 -t 13:15 -d 01/10/2007 15