Articles

Loading

3 ways to use keyboard input in QuickTest Professional: Type, SendKeys and Device Replay

Tool Manual - HP
Author
AJAy
Date
2013-11-19 20:01
Views
20564944

There
are three ways to use keyboard input in QuickTest Professional: Type, SendKeys
and Device Replay. Why, you might ask, use the Type or Sendkeys method
at all?  While you wouldn’t want to automate a whole script using SendKeys
only, sometimes you may, on occasion, need to automate a section of an
application where there is no object recognition.  For example, some
unsupported grids or treeviews in Quick Test Pro can be navigated using a
combination of the HOME, END and arrow keys.  Also — I’ve seen
applications where some fields need to have a keyboard event occur to trigger
some other behavior (like tabbing of a field) using the objects standard Set
method –- which would not work in this case.


1. QTP’s TYPE METHOD


Most
objects support the TYPE method.  Type will enter the specified string
into an object or perform a certain keyboard combination against an
application.  For example:


To
tab off an object you would use the following syntax:


SwfObject(“swfname:=Blank”).Type
micTab


To
enter text:



SwfObject(“swfname:=Blank”).Type “This is my string”


To
send an enter keystroke:


SwfObject(“swfname:=Blank”).Type “


You
can also send a combination of keystrokes at one time. The following holds down
the CTRL and the Shift Keys, then presses the “L” key and releases the CTRL and
Shift keys:



SwfObject("swfname:=Blank").Type micCtrlDwn + micShiftDwn +
"L" + micShiftUp + micCtrlUp


*Important
to remember: If you send a down keystroke, be sure to follow it with its
corresponding up stroke, as seen in the above example.  Problems can arise
by sending a micCtrlDwn and forgetting to release it using micCtrlUp. So, rule
of thumb — if you are pressing a key, make sure to also release it.


2. VBScript SendKeys Method ( Also check out: QTP’s
VBscript SendKeys FAQ
)


There
are instances in which QTP’s Type method does not trigger certain events, or is
unable to mimic certain keystrokes.  In these cases, VBScript SendKeys
method can be used. To use the SendKeys you need to first set the WshShell
object:



Dim mySendKeys

set mySendKeys = CreateObject("WScript.shell")

mySendKeys.SendKeys(“{TAB}”)


To
send the text you would use:



mySendKeys.SendKeys(“This is my string”)


To
send an enter keystroke:


mySendKeys.SendKeys(“~”)


*A
few important tips: Unlike the QTP TYPE method, you will need to use
curly braces for arguments like a TAB or Up arrow key strokes. Also — SendKeys
has the following special characters:  Alt(%), Ctrl(^), Shift(+) and
Enter(~) keys.


So,
to send a CTRL and press the A key you would send:



mySendKeys.SendKeys("^A")


If
you need to perform the same keystroke multiple times, you can create a
compound string argument. This will allow you to perform a specific keystroke
and repeat it any number of times. To select, say, the 10th row in a grid
control you might use:


mySendKeys.SendKeys(“{DOWN 10}”)


This
will send the down key ten times. (For a more detailed explanation of SendKeys
check out VBScript Programmer’s Reference.)


Important

You’ll need to make sure that the application or object you wish to receive the
keystroke has focus before sending the keystroke.


*Common
issues with this method:


(Sometimes
multiple keystrokes will not work. If this is the case, try executing each one
in a separate line.)


3. Device Replay


This
is an undocumented and unsupported QuickTest method, but can be used as a last
resort. To employ this method, you’ll need to create a Device Replay object.


To
tab off an object:



Dim myDeviceReplay


Set
myDeviceReplay = CreateObject(“Mercury.DeviceReplay”)


myDeviceReplay.PressKey
15


*Remember
that Device Replay uses ASCII characters


To send text you would use:


myDeviceReplay.SendString “This is
my string”


To
send an enter keystroke:


myDeviceReplay.PressKey 28 ‘ASCII
code for enter


From
The HP knowledge base:


The
functions that can be used with the Device Replay object are (all coordinates
are relative to the top left corner of the screen):

 

Function

Description

MouseMove x, y

Move the mouse to the screen coordinate (x,y).

MouseClick x, y, button

Move the mouse to the screen coordinate (x,y)
and click the button

(0=left; 1=middle; 2=right).

MouseDblClick x, y, button

Move the mouse to the screen coordinate (x,y)
and double-click the button

(0=left; 1=middle; 2=right).

DragAndDrop x, y, dropx, dropy, button

Drag the mouse from screen coordinate (x,y) to
(dropx,dropy) with the button

(0=left; 1=middle; 2=right) pressed.

PressKey key

Press a key using the ASCII code of the key.
For example, Chr(13), vbCR and vbTab.

MouseDown x, y, button

Press the mouse button on screen coordinate
(x,y).

MouseUp x, y, button

Release the mouse button on screen coordinate
(x,y).

KeyDown key

Press a key using the ASCII code of the key.
For example, Chr(13), vbCR and vbTab.

KeyUp key

Release a key using the ASCII code of the key.
For example, Chr(13), vbCR and vbTab.

SendString string

Type a string.

 

 


Hope
this helps.


 

Total Reply 0

Total 20,613
Number Title Author Date Votes Views
20613
SileniusStor is specialized in reselling Cheap Aquafadas software online.
Softwareces | 2022.09.15 | Votes 0 | Views 18912406
Softwareces 2022.09.15 0 18912406
20612
CSStore is specialized in reselling Cheap Steinberg software online.
Softwareces | 2022.09.04 | Votes 0 | Views 18977277
Softwareces 2022.09.04 0 18977277
20611
Software Tester Community Website
ItSeTsQtBer | 2021.04.11 | Votes 0 | Views 19875962
ItSeTsQtBer 2021.04.11 0 19875962
20610
SoapUI Certification Course Content
Steveskok | 2021.02.08 | Votes 0 | Views 19302947
Steveskok 2021.02.08 0 19302947
20609
JavaScript Course Content
Steveskok | 2021.02.08 | Votes 0 | Views 19724234
Steveskok 2021.02.08 0 19724234
20608
Why most mobile testing is not continuous?
(TestExpert) | 2021.02.04 | Votes 0 | Views 19759211
(TestExpert) 2021.02.04 0 19759211
20607
8 Common Mistakes When Planning and Documenting Your Tests
(TestExpert) | 2021.02.04 | Votes 0 | Views 20122054
(TestExpert) 2021.02.04 0 20122054
20606
Types of Performance Testing
Jamessmith | 2021.01.17 | Votes 0 | Views 19769866
Jamessmith 2021.01.17 0 19769866
20605
How to Build E2E Test Cases (1)
tanthanh | 2020.05.28 | Votes 0 | Views 19772740
tanthanh 2020.05.28 0 19772740
20604
[White Paper] Delivering better software using Test Automation
tanthanh | 2020.05.28 | Votes 0 | Views 19218326
tanthanh 2020.05.28 0 19218326
20603
[Whitepaper] How to choose the right API Testing Solution
tanthanh | 2020.05.28 | Votes 0 | Views 19241036
tanthanh 2020.05.28 0 19241036
20602
[Whitepaper] How to choose the right API Testing Solution
tanthanh | 2020.05.28 | Votes 0 | Views 19587091
tanthanh 2020.05.28 0 19587091
20601
TestOps Introduction
VTB | 2020.03.23 | Votes 0 | Views 19283024
VTB 2020.03.23 0 19283024
20600
TestOps Implementation Case Study
VTB | 2020.03.23 | Votes 0 | Views 20163755
VTB 2020.03.23 0 20163755
20599
Selenium Automation Tester Certification Sample Exam Set 3
(TestExpert) | 2020.02.03 | Votes 0 | Views 19485583
(TestExpert) 2020.02.03 0 19485583
20598
Selenium Automation Tester Certification Sample Exam Set 2
(TestExpert) | 2020.02.03 | Votes 0 | Views 19831928
(TestExpert) 2020.02.03 0 19831928
20597
Selenium Automation Tester Certification : Sample Exam Set 1
(TestExpert) | 2020.02.03 | Votes 0 | Views 19574518
(TestExpert) 2020.02.03 0 19574518
20596
What is agile testing? why is agile testing? and what is the benefits? (20)
oishichip | 2019.12.26 | Votes 0 | Views 19925707
oishichip 2019.12.26 0 19925707
20595
Crowd Testing — Vantagens para testadores, plataformas e clientes [pt-br]
soikmd2 | 2019.12.14 | Votes 0 | Views 19702012
soikmd2 2019.12.14 0 19702012
20594
Software Testing Industry Report (Turkey) 2018-2019 (2)
ItSeTsQtB | 2019.08.08 | Votes 0 | Views 19737125
ItSeTsQtB 2019.08.08 0 19737125
20593
How to bypass security in integration tests in ASP.Net Core
ItSeTsQtB | 2019.08.08 | Votes 0 | Views 20812288
ItSeTsQtB 2019.08.08 0 20812288
20592
For agile testing, fail fast with test impact analysis
ItSeTsQtB | 2019.08.08 | Votes 0 | Views 20209302
ItSeTsQtB 2019.08.08 0 20209302
20591
Career Path in Software Testing
^Software^ | 2019.07.28 | Votes 0 | Views 19926228
^Software^ 2019.07.28 0 19926228
20590
Challenges in Big Data Testing
^Software^ | 2019.07.22 | Votes 0 | Views 19754264
^Software^ 2019.07.22 0 19754264
20589
Essential Necessities In Big Data Testing
^Software^ | 2019.07.22 | Votes 0 | Views 19430809
^Software^ 2019.07.22 0 19430809
20588
5 Test Data Generation Techniques
^Software^ | 2019.07.22 | Votes 0 | Views 19332366
^Software^ 2019.07.22 0 19332366
20587
CI and CD for ETL (Extract-Transform-Load) testing.
^Software^ | 2019.07.22 | Votes 0 | Views 19590924
^Software^ 2019.07.22 0 19590924
20586
Quest for Quality Conference : 5-6 Nov 2019 at Dublin, Ireland
VTB | 2019.07.08 | Votes 0 | Views 19221973
VTB 2019.07.08 0 19221973
20585
TestBash Essentials Conference 2019
VTB | 2019.07.08 | Votes 0 | Views 19808012
VTB 2019.07.08 0 19808012
20584
UKSTAR Conference : 11-03-2019
VTB | 2019.07.08 | Votes 0 | Views 19822326
VTB 2019.07.08 0 19822326
20583
Testing in Context Conference Australia (TiCCA) 2019
VTB | 2019.07.08 | Votes 0 | Views 19331959
VTB 2019.07.08 0 19331959
20582
European Testing Conference 2019
VTB | 2019.07.08 | Votes 0 | Views 19544178
VTB 2019.07.08 0 19544178
20581
Automation Guild Online Conference 2019
VTB | 2019.07.08 | Votes 0 | Views 19927416
VTB 2019.07.08 0 19927416
20580
Software Quality Days 2019 : 15 Jan 2019 (1)
VTB | 2019.07.08 | Votes 0 | Views 19476549
VTB 2019.07.08 0 19476549
20579
Skills required to become a Software Tester (1)
IT-Tester | 2019.07.08 | Votes 0 | Views 19229831
IT-Tester 2019.07.08 0 19229831
20578
Automated Unit Testing with Randoop, JWalk and µJava versus Manual JUnit Testing
IT-Tester | 2019.07.08 | Votes 0 | Views 19359275
IT-Tester 2019.07.08 0 19359275
20577
Scrum Testing Guide Book (2)
IT-Tester | 2019.06.26 | Votes 0 | Views 19478389
IT-Tester 2019.06.26 0 19478389
20576
Acceptance Testing Definition in Testing vs Scrum
IT-Tester | 2019.06.26 | Votes 0 | Views 19604676
IT-Tester 2019.06.26 0 19604676
20575
User Acceptance Testing Checklist
VTB | 2019.06.20 | Votes 0 | Views 19369383
VTB 2019.06.20 0 19369383
20574
Firewalls and Types (1)
VTB | 2018.11.14 | Votes 0 | Views 19122880
VTB 2018.11.14 0 19122880
20573
Senior Test Engineer (1)
VTB | 2018.11.05 | Votes 0 | Views 19635571
VTB 2018.11.05 0 19635571
20572
Junior Test Analyst
kornadian2 | 2018.11.04 | Votes 0 | Views 19335836
kornadian2 2018.11.04 0 19335836
20571
Senior Test Engineer
kornadian2 | 2018.11.04 | Votes 0 | Views 19534763
kornadian2 2018.11.04 0 19534763
20570
Programme Test Manager, 12m, Immed Start, $NEG
kornadian2 | 2018.11.04 | Votes 0 | Views 19445081
kornadian2 2018.11.04 0 19445081
20569
Junior Test Analyst
kornadian2 | 2018.11.04 | Votes 0 | Views 19527715
kornadian2 2018.11.04 0 19527715
20568
Dev & Test Manager
kornadian2 | 2018.11.04 | Votes 0 | Views 19675244
kornadian2 2018.11.04 0 19675244
20567
Senior Test Analyst (Performance Tester)
kornadian2 | 2018.11.04 | Votes 0 | Views 19382227
kornadian2 2018.11.04 0 19382227
20566
QA Automation Test Analyst
kornadian2 | 2018.11.04 | Votes 0 | Views 19437264
kornadian2 2018.11.04 0 19437264
20565
Software/Field Testing Engineer
kornadian2 | 2018.11.04 | Votes 0 | Views 19720794
kornadian2 2018.11.04 0 19720794
20564
Compliance Technician (Tester)
kornadian2 | 2018.11.04 | Votes 0 | Views 19252498
kornadian2 2018.11.04 0 19252498