TestComplete – Find Child or Find Yourself?
Parent page: GUI Recognition with TestComplete
TestComplete provides a whole set of run-time GUI recognition functionalities, based, however, on the same approach: recognition by property values and/or location of the object in internal hierarchy.
Today’s post is about Find method
We continue with example from the previous post.
What happened when the script clicked on the link? – Web page is reloaded; it’s a new object now.
Before we can operate it, we need to identify it first.
We can go down the hierarchy again starting from Sys or Process objects, but we may re-identify the page using Find method, as in the example below.
Dim IEProcess, IExplore
Dim PropNames, PropValues
Dim Page
Dim objLink
'Close browser
PropNames = Array("processname", "index")
PropValues = Array("iexplore", 1)
Set IEProcess = Sys.FindChild(PropNames, PropValues, 1, True)
If IEProcess.Exists then
IEProcess.Close(10000)
End if
'Open browser and navigate to the web-site
Set IExplore = TestedApps.iexplore
IExplore.Params.SimpleParams.CommandLineParameters = "http://www.google.ca/"
Call IExplore.Run(1, False, 5000)
'Find Web Page Object
PropNames = Array("objecttype", "url")
PropValues = Array("page", "http://www.google.ca/")
Set Page = Sys.Process("iexplore").FindChild(PropNames, PropValues, 1, True)
If Not Page.Exists then
Exit Sub
End if
'Find Web Link Object
PropNames = Array("tagName", "namePropStr")
PropValues = Array("A", "advanced_search*")
Set objLink = Page.FindChild(PropNames, PropValues, 10, True)
If Not objLink.Exists then
Exit Sub
End if
objLink.Click
PropNames = Array("objecttype", "url")
PropValues = Array("page", "http://www.google.ca/advanced_search?hl=en")
Set Page = Page.Find(PropNames, PropValues, 1, True)
If Not Page.Exists then
Exit Sub
End if

