Interaktionen auf höherer Ebene

Functional Tester-Clientprozesse interagieren mit der zu testenden Anwendung und stellen relevante Informationen zusammen, um Operationen wie Aufzeichnung, Wiedergabe und Objektprüfungen auszuführen. Dieser Abschnitt enthält eine Übersicht über die Interaktionen zwischen den Clientprozessen und den Prozessen der zu testenden Anwendung. Functional Tester kommuniziert mit der zu testenden Anwendung über eine IPC-Schicht des gemeinsam genutzten Speichers.
Interaktionen auf höherer Ebene

Functional Tester erstellt in jedem Prozess (Client- oder Serverprozess) ein Testkontextobjekt (TestContext) und registriert es im gemeinsam genutzten Speicher. Das Testkontextobjekt ist ein Verweis auf den zu testenden Prozess. Das registrierte Testkontextobjekt dient als Verweis auf den zugeordneten Prozess für eine Kommunikation. Normalerweise steht ein Testkontextobjekt im Zusammenhang mit einem testbaren Prozess auf Betriebssystemebene oder mit einem Testclient. Ein Prozess kann mehrere Testkontextobjekte aufweisen.

Zwei Testkontextobjekte der zu testenden Anwendung können nicht direkt miteinander kommunizieren. Stattdessen erfolgt die Kommunikation über das Testkontextobjekt des Clients.

Interaktionen auf höherer Ebene

Jeder Prozess im Functional Tester-Prozessmodell verwendet ein Testkontextobjekt zum Verwalten von IPC-Aufrufen sowie der Anforderungen für diesen Prozess. Clientprozesse interagieren mit mehreren Prozessen der zu testenden Anwendung, während jeder Prozess der zu testenden Anwendung jeweils nur auf einen einzigen Clientprozess antwortet. So kommuniziert beispielsweise ein Prozess des Typs "Find" während der Wiedergabe mit allen verfügbaren Prozessen der zu testenden Anwendung für das gesuchte Testobjekt.

Der Objektmanager handhabt die gesamte serverseitige Prozesskommunikation und führt Metaaktionen aus, die mit der zu testenden Anwendung interagieren. Die zentralen Interaktionen für Aufzeichnung und Wiedergabe mit der zu testenden Anwendung haben hier ihren Ursprung und schließen alle Testkontextobjekte der zu testenden Anwendung ein. Ein Objektmanager-Agent führt die Metaaktionen des Objektmanagers aus, die mit einem bestimmten Testkontextobjekt im Zusammenhang stehen. Innerhalb von Testkontextobjekten werden Testdomänenobjekte (TestDomain) eingerichtet, um die testdomänenspezifische Kommunikation von Functional Tester zu verwalten. Beispielsweise werden für einen Browserprozess der zu testenden Anwendung ein HTML-Testkontextobjekt und ein Java-Testdomänenobjekt eingerichtet. Diese Objekte werden eingerichtet, weil Browser sowohl HTML-Elemente der HTML-Domäne als auch Applets der Java-Domäne enthalten.

In einem Testdomänenobjekt werden Proxy-Testobjekte (ProxyTestObjects) zum Verwalten der Kommunikation auf Steuerelementebene erstellt. Proxyobjekte werden für Steuerelemente erstellt, die während der Ausführung einer Functional Test-Aktivität kommuniziert werden müssen. Proxyobjekte verfügen über eine Eins-zu-eins-Beziehung mit jedem Steuerelement in der zu testenden Anwendung. Jede Interaktion zwischen unterschiedlichen Steuerelementen der zu testenden Anwendung erfolgt über ein Proxy-Testobjekt.

Anmerkung: Testkontextobjekte, Objektmanager, Testdomänenobjekte und Proxyobjekte werden im Prozess der zu testenden Anwendung erstellt.
Zugehörige Konzepte
Prozessmodell
Proxy-Modell
Interaktionen der zu testenden Anwendung

Feedback