29 What’s New in QTP
29.1 IDE Enhancement:
Comment Block: Comment by “CTRL+M”, uncomment by “CTRL+SHIFT+M”.
Local Function List: Display only local function by “ALT+.”
Ignore Browser: Ignore QC and other pages, setting in “ToolsàOptionsàWeb”
29.2 Added and Enhanced Utility Objects:
QTP adds two methods to the SystemUtil object: BlockInput & UnBlockInput Method:
BlockInput : Prevents keyboard and mouse input events fromreaching applications. Input is block until UnBlockInput method called or “CTRL+SHIRT+DEL”key pressed.
29.3 The Print Log Utility
a. Show/Hide the “print log window”
'API declaration for ShowWindow API Extern.Declare micLong,"ShowWindow","user32","ShowWindow",micLong,micLong
'ShowWindow constants Const SW_HIDE = 0 Const SW_SHOW = 5
'Function to hide the print log window Public Function HidePrintWindow() ‘Set visible value: see if print log window is already visible or not Set QTPlogWindow = Window("regexpwndclass:=Mercury::Qtprn::PrintWindow" ,"visible:=True|False")
'Check if the LOg window exist If QTPlogWindow.Exist(0) Then hwnd = QTPlogWindow.GetROProperty("hwnd") 'Show/Hide the window, choose the Const value above Extern.ShowWindow hwnd, SW_HIDE End if End Function |
b. Get the Print Log text:
|
|
Public Function GetPrintWindowText() GetPrintWindowText = "" Set QTPlogWindow = Window("regexpwndclass:=Mercury::Qtprn::PrintWindow", "visible:=True:False") 'Check if the Log window exist
If QTPlogWindow.Exist(0) Then 'Get the text from of edit box GetPrintWindowText = QTPlogWindow.WinEdit("nativeclass:=Edit","visible:=True:False").GetROProperty("text") End if End Function |
c. Clearing the Print WindowBlockInput Method
'API Declaration for SendMessage Extern.Declare micLong,"SendMessage","user32","SendMessageA",micLong,micLong,micLong,micRef+micLong
'Message to Set text of a window Const WM_SETTEXT = &HC
'Function to clear the print Log window Public Function ClearPrintWindow() 'Check if the print Log window exists or not Set QTPlogWindow = Window("regexpwndclass:=Mercury::Qtprn::PrintWindow","visible:=True|False") If QTPlogWindow.Exist(0) Then 'Get the handle of edit box 'It is important to use "visible:=True|False" here also as the 'for a hidden window the edit is also hidden hwnd = QTPlogWindow.WinEdit("nativeclass:=Edit","visible:=True|False").GetROProperty("hwnd")
'Send a message to clear the text box text Extern.SendMessage hwnd, WM_SETTEXT, 0, 0 End if End Function
'Use the function to clear the window Call ClearPrintWindow |
29.4 micRegExpMatch Object
3 methods supported:
Initialize : Assigns the regular expression pattern to be testd; |
Compare: compare it with value and return Boolean value; |
ToString: Get the string description of the operation; |
Here is the example:
micRegExpMatch.Initialize("test.*")
print micRegExpMatch.Compare("testing")
print micRegExpMatch.Compare("System testing")
print micRegExpMatch.ToString() |
29.5 MercuryTimers:
MercuryTimers is the objects allow us create various times.
There are 5 methods supported:
Start: start the timer |
Continue: Continue the timer |
ElapsedTime: Returns the total accumulated time in milliseconds since the timer started. |
Reset: Reset the timer |
Stop: stop the timer |
Here is the example:
MercuryTimers.Timer("Time1").Start Print MercuryTimers.Timer("Time1").ElapsedTime MercuryTimers.Timer("Time1").Stop |
29.6 RepositoriesCollection
A collectionobject that enables you to programmatically manage the run-time collection ofshared object repository files associated with the current action.
There are 7 methods supported:
Find Method: find a share repository |
MoveToPos Method: Moves the object repository file entry from the current index position to the specified new index position within the run-time collection of shared object repository files associated with the current action. |
Remove Method: remove a share repository |
RemoveAll Method: remove all share repository |
Count Property: count of share repositories |
Item Property: Returns the path of the object repository file located in the specified index position within the run-time collection of shared object repository files associated with the current action. |
Here is the example:
RepositoriesCollection.RemoveAll RepositoriesCollection.Add "C:\test1.tsr" |