Nach Testobjekten (TestObjects) suchen

Functional Test unterstützt die Suche nach einem oder mehreren Testobjekten (TestObjects), die 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 durchführen oder auf untergeordnete Elemente eines übergeordneten Testobjekts (TestObject) beschränken.

Functional Test unterstützt ein Stammtestobjekt (RootTestObject), das einen umfassenden Überblick über die getestete Software bietet. Zum Ausführen einer globalen Suche rufen Sie die Suchmethode für das Stammtestobjekt (RootTestObject) auf. Durch das Aufrufen einer Suchmethode für ein Testobjekt (TestObject) wird die Suche auf die untergeordneten Elemente dieses Testobjekts (TestObject) beschränkt.

Das erste Argument in der Suchmethode ist ein subitem-Element für die Eigenschaften der Suche. Das zweite (optionale) Argument ist eine Markierung, die anzeigt, ob nur nach untergeordneten Elementen gesucht werden soll, die möglicherweise in der Testobjektübersicht enthalten sind. Folgende Werte von subitem-Elementen für Eigenschaften sind gültig:

Der erste Listeneintrag wird abgeglichen, so dass eine Liste mit Kandidaten erstellt wird, deren untergeordnete Elemente mit dem nächsten Listeneintrag abgeglichen werden usw.

Folgende spezielle Eigenschaften beziehen sich auf "RootTestObject.find":

Beispiele:

     TestObject[] foundTOs ;
     RootTestObject root = RootTestObject.getRootTestObject() ;
     // Find all toplevel windows in the Windows domain with caption "My
     // Document"
     CaptionText caption = new CaptionText("My Document") ;
     foundTOs = root.find(atChild(".domain", "Win", ".caption",
       caption)) ;
     
     // Find any dialogs, then return their children
     // "OK" buttons.
      RegularExpression dialogRE = new
        RegularExpression("*dialog", false) ;
      RegularExpression buttonRE = 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.
      ProcessTestObject p1 = StartApp("Notepad") ;
      Integer pid = new Integer((int)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.      Long hWnd = 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.      Long handle = getAppsHwnd();      foundTOs = root.find(atChild("Handle", handle, ".domain", "Net"));

Nutzungsbedingungen | Feedback
(C) Copyright IBM Corporation 2002, 2004. Alle Rechte vorbehalten.