Nach Testobjekten suchen

Functional Tester bietet Unterstützung für die Suche nach einem oder mehreren Testobjekten (TestObjects), die den angegebenen Suchkriterien entsprechen. Die Suche basiert auf Name/Wert-Paaren, die die Eigenschaften des gesuchten Testobjekts (TestObject) oder der gesuchten Testobjekte (TestObjects) darstellen. Sie können die Suche entweder global oder begrenzt auf die untergeordneten Elemente eines übergeordneten Testobjekts (TestObject) ausführen.

Functional Tester bietet auch Unterstützung für ein Stammtestobjekt (RootTestObject), über das ein umfassender Überblick über die getestete Software möglich ist. Möchten Sie eine globale Suche ausführen, müssen Sie die entsprechende Suchmethode für das Stammtestobjekt (RootTestObject) aufrufen. Wenn Sie nur die Suchmethode für das gewöhnliche Testobjekt (TestObject) aufrufen, wird nur nach den untergeordneten Elementen des betreffenden Testobjekts (TestObject) gesucht.

Beim ersten Argument der Suchmethode handelt es sich um ein subitem-Element für die Sucheigenschaften. Beim zweiten optionalen Argument handelt es sich um eine Markierung, über die angegeben werden kann, dass nur nach untergeordneten Elementen gesucht werden soll, die sich eventuell in der Testobjektübersicht befinden. Gültige Werte für die subitem-Elemente zu den Eigenschaften sind:

Der erste Listeneintrag wird abgeglichen, um eine Liste mit Kandidaten zu erhalten. Anschließend werden die untergeordneten Elemente dieser Kandidaten in Bezug auf den nächsten Listeneintrag abgeglichen usw.

Es gibt bestimmte Eigenschaften, die sich auf "RootTestObject.find" beziehen. Dazu gehören:

Beispiele:

     Dim FoundTOs As TestObject()
     Dim Root As RootTestObject
     Root = RootTestObject.GetRootTestObject()

     ' Find all toplevel windows in the Windows domain with
     ' caption "My Document"
     Dim Caption As CaptionText
     Caption = New CaptionText("My Document")
     FoundTOs = Root.Find(AtChild(".Domain", "Win", _
       ".caption", Caption))
     ' Find any dialogs, then return their children
     ' "OK" buttons.
     Dim DialogRE As RegularExpression = New _
       RegularExpression("*dialog", false)
     Dim ButtonRE As RegularExpression = New _
       RegularExpression("*button", false)
     FoundTOs = Root.Find(AtList( _ 
        AtDescendant(".class", DialogRE), _
        AtChild(".class", ButtonRE, _ ".value", "OK"))
     ' Start Notepad, dynamically enable that process,
     ' find its top-level window that matches the process id
     ' and get its descendant text window.
     Dim P1 As ProcessTestObject = StartApp("Notepad")
     Dim Pid As Integer = P1.GetProcessId()
     FoundTOs = Root.Find(AtList( _ 
        AtProperty(".processId", Pid), _ AtDescendant(".class", ".text")))
                
     ' This enables a Windows app with the provided window handle and returns a
      ' TestObject representing the window.
      Dim HWnd As Long = GetAppsHwnd()
      FoundTOs = Root.Find(AtChild(".hwnd", HWnd, ".domain", "Win"))
         
     ' This enables a .NET app with the provided window handle and returns a
      ' TestObject representing the window.
      Dim Handle As Long = GetAppsHwnd()
      FoundTOs = Root.Find(AtChild("Handle", Handle, ".domain", "Net"))

Feedback